[英]how to calculate time difference between non-consecutive rows based on condition from another row in R?
[英]How to updated rows with 0 condition from another row in R
我们有一个如下所示的数据框:
Group1 Group2 Group3 Group4 Group5 Group6
1 0 1 0 0 0
0 1 0 1 0 0
0 0 1 0 1 0
1 0 1 0 0 0
1 0 0 0 1 0
我们对各个组进行二进制计算,其中从第 3 组和第 4 组中减去第 1 组和第 2 组得到第 5 组和第 6 组
我们在 Group5 和 6 中得到 0,我们想用 Group1 和 group 2 更新它们
我们有 100 多条条件相似的线路,需要 output,如下所示:
Group1 Group2 Group3 Group4 Group5 Group6
1 0 1 0 1 0
0 1 0 1 0 1
0 0 1 0 1 0
1 0 1 0 1 0
1 0 0 0 1 0
根据您的条件编辑
data %>%
mutate(Group5 = abs(Group1 - Group3),
Group6 = abs(Group2 - Group4)) %>%
mutate(Group5 = Group5 + Group1 * as.integer(!(as.logical(Group5) | as.logical(Group6))),
Group6 = Group6 + Group2 * as.integer(!(as.logical(Group5) | as.logical(Group6)))
)
仅在 Group5 和 6 均为 0 时更新。如果不是,请告诉我
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.