我在R中的数据框看起来像这样:
... vals cat ...
1.2 TRUE
1.6 FALSE
5 TRUE
我喜欢修改“vals”列中的值,具体取决于cat中的因子 column为TRUE或false。假设我想将vals列中的值相乘 当同一行的类别为TRUE时,使用因子(例如9)。
结果我想 拥有原始数据框的副本,但改为使用修改后的值。或者一个数据框,其中一列包含原始值(如果未修改)(FALSE)和修改后的if cat 是的。
希望有人可以 帮我一把。最诚挚的问候Sab。
答案 0 :(得分:0)
x <- data.frame(vals=c(11.2,9.1,2.1),cat=c(TRUE,FALSE,TRUE))
x
vals cat
1 11.2 TRUE
2 9.1 FALSE
3 2.1 TRUE
y <- x
y[y$cat,] <- x[x$cat,]*9
y
vals cat
1 100.8 9
2 9.1 0
3 18.9 9