条件子集、操作和替换

  • 本文关键字:替换 操作 子集 条件 r
  • 更新时间 :
  • 英文 :


根据前面的问题,我提取了以下数据。帧

DF <- data.frame(A =c("One","Two","Three","Four","Five"),
B=c(1,1,2,2,3),
D=c(10,2,3,-5,5))
subset(DF, B %in% c(1,3))
A B  D
1  One 1 10
2  Two 1  2
5 Five 3  5

但现在我想(例如(将数字乘以(比如(5,并将其替换为原始数据帧

以下代码

subset(DF, B %in% c(1,3))[,2:3] * 5
B  D
1  5 50
2  5 10
5 15 25

给了我想要的号码,但我如何将它们返回

A B  D
1   One 5 50
2   Two 5  10
3 Three 2  3
4  Four 2 -5
5  Five 15 25

答案就在我眼前(索引数字……但我该如何找到它们(?

您可以进行

DF[DF$B %in% c(1, 3), 2:3] <- DF[DF$B %in% c(1, 3), 2:3] * 5
DF
#      A  B  D
#1   One  5 50
#2   Two  5 10
#3 Three  2  3
#4  Four  2 -5
#5  Five 15 25

最新更新