[英]Comparing Dataframe column names in R
我試圖比較兩個數據幀之間的列名稱並修改后一個數據幀中的列。
n = c(0, 1, 0)
s = c(1, 0, 1)
b = c(1, 1, 1)
a = c(0, 0, 0)
c = c(1,3,2)
df1 = data.frame(n, s, b)
df2 = data.frame(n,s,a,c)
如何編寫比較/合並df1和df2的語法,使輸出如下:
df1 output:
n s b
1 0 1 1
2 1 0 1
3 0 1 1
df2 output:
n s b
1 0 1 0
2 1 0 0
3 0 1 0
任何幫助表示贊賞謝謝!
我們可以使用intersect
和setdiff
來做到這setdiff
#Drop columns from df2 which are not present in df1
df2 <- df2[intersect(names(df1), names(df2))]
#add columns which are present in df1 but not in df2 and assign it to 0
df2[setdiff(names(df1), names(df2))] <- 0
df2
# n s b
#1 0 1 0
#2 1 0 0
#3 0 1 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.