簡體   English   中英

用另一個數據集中的值替換一個數據集中的值R

[英]replace values in one dataset with values in another dataset R

我有一個看似簡單的問題,我為此感到困惑。 我有一個DF,說:

x y z
0 1 2
3 5 4
1 0 5
0 5 0

另一個:

x y z
1 5 6
2 4 5
4 5 7
5 8 5

我想用df2中的值替換df1中的零值。 例如,df1的像元1將為1而不是零。 我想要一個數據框中的所有列。 你能幫我編碼嗎? 我似乎無法弄清楚。 謝謝!

首先,你可以找到0的使用的指數which

zero_locations <- which(df1 == 0, arr.ind=TRUE)

然后,您可以使用這些位置進行替換:

df1[zero_locations] <- df2[zero_locations]

正如David Arenburg在評論中指出的那樣, which並非嚴格必要:

zero_locations <- df1 == 0

也會工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM