2017-02-09 1 views
1

は、私は2つのデータフレームを持っていると、彼らは次のようになります。データフレームは、同一の行名を持っている、と私はcbindまたはmergeはそれらを一緒に組み合わせることができます知っているデータフレームを列で結合する方法は?

df <- data.frame(
    A = c(19, 79, 34), 
    B = c(21, 21, 14), 
    C = c(17, 14, 57) 
) 
row.names(df) <- c("2016-10-31", "2016-09-30", "2016-08-31") 
df 
      A B C 
2016-10-31 19 21 17 
2016-09-30 79 21 14 
2016-08-31 34 14 57 

df2 <- data.frame(
    A_Return = c(0.1, 0.9, 0.4), 
    B_Return = c(0.1, 0.2, 0.4), 
    C_Return = c(0.7, 0.4, 0.7) 
) 
row.names(df2) <- c("2016-10-31", "2016-09-30", "2016-08-31") 
df2 
      A_Return B_Return C_Return 
2016-10-31  0.1  0.1  0.7 
2016-09-30  0.9  0.2  0.4 
2016-08-31  0.4  0.4  0.7 

。しかし、私は、次の順序で列をしたい:

  A A_Return B B_Return C C_Return 
2016-10-31 19  0.1 21  0.1 17  0.7 
2016-09-30 79  0.9 21  0.2 14  0.4 
2016-08-31 34  0.4 14  0.4 57  0.7 

答えて

1

我々はちょうど2つのデータフレームをマージしますrow.names

dfN <- merge(df, df2, by = "row.names") 
row.names(dfN) <- dfN$Row.names 
dfN1 <- dfN[-1][order(colnames(dfN)[-1])] 
+0

によってmergeを行うことができます。私が探しているのは、 'A'の隣に' A_Return'を、 'b'の隣に' B_Return'を置くことです。 –

+0

@ T-T投稿を更新しました – akrun

関連する問題