2014-06-11 47 views
0

我有一個名爲「target」的df,列名爲V1:V200。我想用名爲「nameSource」的df中存儲在名爲V2的列中的字符串替換這些列名稱。如何將源數據框中的列名分配給目標df

我換位 「nameSource」,使用:

> wideNameSource<-as.data.frame(t(nameSource)) 

在下面的步驟中,我從 「wideNameSource」 消除V1和創建新的DF稱爲 「JustNames」。 (V1是值爲1:200的數字列)。這產生了一個包含我想用作列名的字符串的單個列的df。這些按照相同的順序排序,我想將它們應用到我的「目標」df。

> JustNames<-subset(wideNameSource[2,]) 

我又試圖將值綁定在「JustNames」 DF的「目標」的頂部DF使用:

> targetWithColNames<-rbind(JustNames,target) 

但我得到警告如下消息流:

1: In `[<-.factor`(`*tmp*`, ri, value = c(0.35717, 0.82226, ... : 
    invalid factor level, NA generated 

和targetWithColNames df中的所有(數值)數據都顯示爲NA。

什麼是讓我的列名從「nameSource」到「target」最簡單的方法?

+0

'名(DF1)< - DF2 $ names'? –

回答

1

使用你的兩個dataframes targetnameSource

colnames(target) <- nameSource$V1 
+0

謝謝。這是一個巨大的幫助! – user3614783

相關問題