如何解决根据R中的匹配案例更改列
我有一个像这样的data.frame
data=data.frame(time=c(1,1,0.5,1),columnB= c(1,2,5,6),columnC= c(1,5))
time columnB columnC
1.0 1 1
1.0 2 2
0.5 5 2
1.0 6 5
我想根据B列和C列的元素修改“时间”,例如 当B列的元素首次出现在C列中时,“时间” B列中的值为5。
我希望不要混淆。任何帮助将不胜感激。
time columnB columnC
1.0 1 1
1.0 2 2
0.5 5 2
0.5 6 5
解决方法
我认为这就是您要的(它肯定会提供所需的输出):
within(data,time[match(columnC,columnB) < match(columnC,columnC)] <- time[columnB == 5])
#> time columnB columnC
#> 1 1.0 1 1
#> 2 1.0 2 2
#> 3 0.5 5 2
#> 4 0.5 6 5
由reprex package(v0.3.0)于2020-08-17创建
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。