编辑:虽然当我将df1中的所有> 0值设置为1(我现在可以忍受)时,它可以使用建议的解决方案,但实际上我确实有值> 1,因此乘法不是& #34;完美"解决方案。我编辑了df1的例子,现在它应该更清楚,抱歉给您带来不便。
搜索并没有找到我的简单问题的任何解决方案,尽管这与许多其他替换问题有关。所以......
我有两个data.frames
DF1:
a b c d
1 0 0 5 1
2 0 1 1 0
3 1 1 3 7
DF2:
value some_variable
a 100 234
b 200 234
c 300 234
d 400 234
现在我想用df2 $ value中的相应值替换df1中的值> 0。所以看起来应该是这样的:
a b c d
1 0 0 300 400
2 0 200 300 0
3 100 200 300 400
我想这是一个相当基本的问题,但我无法想出一个简单的解决方案。到目前为止,我尝试了ifelse
和match
,但我未能将df1列中的值> 0分配给df2的rownames。
提前致以最诚挚的问候和谢意
答案 0 :(得分:2)
我们可以做到
df1*df2$value[col(df1)]