【发布时间】:2015-11-11 15:36:50
【问题描述】:
我有一些变量var1, var2, ..., var100
我想创建新变量var1_trun, var2_trun, ..., var100_trun
应该与var1, var2, ..., var100 具有相同的值除了高于 90% 的值。这些值应设置为等于原始变量的 90%。
最好的方法是什么?
我试过了:
trun <- function(x) {
assign(paste0(substitute(x),"_trun"))<<-x
assign(paste0(substitute(x),"_trun"))[x>quantile(x, probs=seq(0,1,0.05))[19]]<<-quantile(x, probs=seq(0,1,0.05))[19]
}
trun(data$var1)
我明白了:
Error in assign(paste0(substitute(x), "_trun")) <<- x :
object 'x' not found.
【问题讨论】:
-
我同意,第一步是回到开头,将所有变量放在一个列表中。
-
不,原始变量有不同的名称。我在这里将它们称为 var1, var2,... 只是为了方便......谢谢!