2017-03-24 10 views
0

"col1"列をx回コピーし、これらの各列に文字ベクトルのx文字列のいずれかを追加する方法を探しています。例:サフィックス付きのデータフレーム列を動的にコピーするR

その結果
df <- data.frame(col1 = c(1,2,3,4,5)) 
suffix <- c("a", "b", "c") 

df_suffix <- data.frame(col1 = c(1,2,3,4,5), col1_a = c(1,2,3,4,5), col1_b = c(1,2,3,4,5), col1_c = c(1,2,3,4,5)) 

    col1 col1_a col1_b col1_c 
1 1  1  1  1 
2 2  2  2  2 
3 3  3  3  3 
4 4  4  4  4 
5 5  5  5  5 

答えて

2

あなたはdf内の新しい列を作成するためにpaste()を使用して、彼らに最初の列の値を割り当てることができます。

df[,paste(names(df), suffix, sep = "_")] <- df[,1] 
# col1 col1_a col1_b col1_c 
#1 1  1  1  1 
#2 2  2  2  2 
#3 3  3  3  3 
#4 4  4  4  4 
#5 5  5  5  5 
関連する問題