我正在使用以下示例:
Original Modified New_Orig New
1 2 1 0
2 4 1 0
3 6 4 0
4 8 5 0
5 10 5 0
6 12 5 0
7 14 5 0
8 16 5 0
9 18 9 0
10 20 10 0
Run Code Online (Sandbox Code Playgroud)
我希望New用Modifiedif New_Orig中的任何值替换值中的值Original.
理想情况下New看起来像这样:
New
2
2
8
10
10
10
10
10
18
20
Run Code Online (Sandbox Code Playgroud)
任何帮助非常感谢.
亲切的问候,
在这里,New创建了一个新列:
within(dat, New <- Modified*(New_Orig == Original))
Original Modified New_Orig New
1 1 2 1 2
2 2 4 1 0
3 3 6 4 0
4 4 8 5 0
5 5 10 5 10
6 6 12 5 0
7 7 14 5 0
8 8 16 5 0
9 9 18 9 18
10 10 20 10 20
Run Code Online (Sandbox Code Playgroud)
更新
匹配值并从Modified以下选择适当的值:
within(dat, New <- Modified[match(New_Orig, Original)])
Original Modified New_Orig New
1 1 2 1 2
2 2 4 1 2
3 3 6 4 8
4 4 8 5 10
5 5 10 5 10
6 6 12 5 10
7 7 14 5 10
8 8 16 5 10
9 9 18 9 18
10 10 20 10 20
Run Code Online (Sandbox Code Playgroud)