【发布时间】:2017-07-14 20:31:25
【问题描述】:
我有一个代表折叠变化的值的数据框:
> df1 <- data.frame(A=c(1.74,-1.3,3.1), B=c(1.5,.9,.71), C=c(1.1,3.01,1.4))
A B C
1 1.74 1.50 1.10
2 -1.30 0.90 3.01
3 3.10 0.71 1.40
还有一个 pvalues 的数据框,它可以相同地匹配行和列:
> df2 <- data.frame(A=c(.02,.01,.8), B=c(NA,.01,.06), C=c(.01,.01,.03))
A B C
1 0.02 NA 0.01
2 0.01 0.01 0.01
3 0.80 0.06 0.03
我想要的是修改 df1 中的值,以便只保留 df2
> desired <- data.frame(A=c(1.74,-1.3,NA), B=c(NA,.9,NA), C=c(1.1,3.01,1.4))
> desired
A B C
1 1.74 NA 1.10
2 -1.30 0.9 3.01
3 NA NA 1.40
我首先尝试在这些数据帧上使用矢量语法,但没有奏效。然后我按列尝试了一个 for 循环,但也失败了。
我认为我不明白如何索引每个 i,j 位置,然后根据逻辑将 df1 值替换为 df2 值。
或者如果在 R 中有更好的方法。
【问题讨论】:
标签: r