2017-03-03 70 views
0

这段代码正常工作:“dimnames错误”取决于colnames填充顺序

MATRIX_RESULT_CSV <- matrix(NA,nrow=1,ncol=5) 
colnames(MATRIX_RESULT_CSV)[3:5] <- c("3", "4", "5") 
colnames(MATRIX_RESULT_CSV)[1:2] <- c("1", "2") 

然而,当弗斯特列填充第一它产生一个“dimname错误”:

MATRIX_RESULT_CSV <- matrix(NA,nrow=1,ncol=5) 
colnames(MATRIX_RESULT_CSV)[1:2] <- c("1", "2") 
colnames(MATRIX_RESULT_CSV)[3:5] <- c("3", "4", "5") 

Error in `colnames<-`(`*tmp*`, value = c("1", "2")) : 
    length of 'dimnames' [2] not equal to array extent 

我我正在看下面的原因。

回答

-1

不知道的根本原因,但interstingly这个工程:

MATRIX_RESULT_CSV <- matrix(NA,nrow=1,ncol=5) 
colnames(MATRIX_RESULT_CSV) = rep(NA, ncol(MATRIX_RESULT_CSV)) 
colnames(MATRIX_RESULT_CSV)[1:2] = c("1","2")