我有一个大的xlsx文件;我对2列感兴趣:pat_id
和param_1
。
原始文件看起来像这样(我用点替换值只是为了更快地输入):
......pat_id...........param_1..........
row1 ........123...............0.............
...
...
rowi ........456...............1.............
...
rowk ........789...............5.............
...
rown ........................................
我的文件较小:
pat_id | param_1
123 55
456 33
789 22
我想将原始文件中param1
的值替换为较小文件中的值。像这样:
......pat_id...........param_1..........
row1 ........123...............55.............
...
...
rowi ........456...............33.............
...
rowk ........789...............22.............
...
rown ........................................
到目前为止: 1)我将两个文件读入数据帧。 2)然后我尝试找到pat_id == 123的行,并访问列' param1'并指定一个新值(55)。
然而,我遇到了很多错误。
我的上一个版本:
data[data == 123, 'param1'] <- small_data[1, 'param1']
给出错误:
Error in `[<-.data.frame`(`*tmp*`, data == curr_pat_id, column, value = "55") :
non-existent rows not allowed
出于某种原因,当data[data == 123, 'param1']
返回NA
...
我尝试探索加入/合并替代方案,但没有找到合适的解决方案。
基本上我只想说&#34;在数据pat_id == 123中,将其param_1值替换为55&#34;