我想对数据框的列进行许多修改。但是,由于需要大量列和转换,我想避免一遍又一遍地使用数据框名称。
在 SAS 数据步骤中,在一个数据步骤中,您可以创建一个变量并在定义后立即引用它:
data A;
set A;
varA = varB > 1;
varC = var A + varB;
....
run;
可以在R中做到这一点吗?
我能想到的一种方法是使用 attach(),然后创建数百个数组,然后在 detach() 之前对它们进行 cbind()。我知道很多 R 的老手建议不要使用 attach()。但是我需要进行大量的数据操作(数百个新变量),并且按顺序对每个人调用 transform(df,) 会非常麻烦。
例如:
attach(A)
varA <- varB > 1
varC <- varA + varB
A <- cbind(varA, varB, varC)
detach()
但我不确定这是否是在 R 中执行此操作的最佳方法。