【发布时间】:2017-08-08 13:31:57
【问题描述】:
我对 R 很陌生,所以这个问题可能有点幼稚。
我有一个包含几列的小标题,我想通过对 N 个 bin 中的一个列中的值进行分箱来创建一个因子 (Bin)。这是在管道中完成的。但是,我希望能够在脚本顶部定义要分箱的列(例如 bin2use = RT),因为我希望这很灵活。
我尝试了几种使用此变量引用列名的方法,但我无法让它工作。其中我尝试过 get()、eval()、[[]]
简化示例代码
Subject <- c(rep(1,100), rep(2,100))
RT <- runif(200, 300, 800 )
data_st <- tibble(Subject, RT)
bin2use = 'RT'
nbin = 5
binned_data <- data_st %>%
group_by(Subject) %>%
mutate(
Bin = cut_number(get(bin2use), nbin, label = F)
)
Error in mutate_impl(.data, dots) :
non-numeric argument to binary operator
【问题讨论】:
-
请展示一个可重现的例子,即
data_st -
对不起,应该立即这样做。它现在在那里。