2017-01-10 6 views
-3

文字列変数strがあり、値は"car"です。 strを使用してデータフレームに新しい列を作成したいのですが、名前が"car"の列が作成されます。以下は簡単な例です。R:文字列変数名を持つ列から新しいデータを作成

a<-c("Bill", "Jo", "Sue") 
b<-c(3,4,10) 
d<-c("Red", "Blue", "Yellow") 
df<-data.frame(b,d,row.names=a) 
colnames(df)<-c("age","favorite_color") 
df 
     age favorite_color 
    Bill 3   Red 
    Jo  4   Blue 
    Sue 10   Yellow 
str<-"car" 
df$str<-character(nrow(df)) 
df 
     age favorite_color str 
    Bill 3   Red  
    Jo  4   Blue  
    Sue 10   Yellow  

列名が"car"であるように、新しいデータフレームの列を作成しながら、strを評価する方法はあります。

+5

'df [[str]] < - 'です。 – nrussell

+1

@irritable_phd_syndromあなたが正しいです、それは答えを見つけるためにあなたの正確な質問タイトルを入力するのは難しいです...(私の部分からの投票はありませんが、本当に、次回より難しくしようとし、タイトルを検索キーワードとして使用して回答を見つけることができます)。 – Tensibai

答えて

0

メソッドは、オブジェクトstrが指す名前ではなく、名前が "str"の新しい列を作成しようとします。試してみてください:

> df[,str]<-character(nrow(df)) 
> df 
    age favorite_color car 
Bill 3   Red 
Jo  4   Blue 
Sue 10   Yellow 
関連する問題