2014-07-23 94 views
0

我有一個x * y尺寸的dataframe1。我需要在一個空的dataframe2中導入一些具有0 * z尺寸的列。運行命令將數據從一個數據幀的列導入r中的另一個數據幀?

dataframe2$z1 <- dataframe1$y1 

給出了這樣的錯誤:

Error in `$<-.data.frame`(`*tmp*`, "y1", value = c(140100303L, : 
    replacement has x rows, data has 1 

使用附加命令也有類似錯誤結束。

+1

爲什麼不直接從'dataframe1'創建'dataframe2'? –

+0

除了pascal評論外,還嘗試在R中搜索和學習data.frame子集。 – agstudy

回答

0
dataframe1 <- as.data.frame(matrix(1:10, ncol=2)) 

假設你想從dataframe1 選擇一列「V1」,並創建一個新的data.frame

dataframe2 <- setNames(dataframe1[,"V1",drop=F],"z1") 

或者,如果你知道之前dataframe1的尺寸,創建dataframe2與同一行大小。

dataframe2 <- data.frame(Z1=numeric(nrow(dataframe1)), Z2=numeric(nrow(dataframe1))) 
dataframe2$Z1 <- dataframe1$V1 #works 
相關問題