2017-03-03 3 views
0

Dieses Stück Code funktioniert:'dimnames Fehler' je nach COLNAMES Füllung um

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") 

Doch wenn die furst Spalten gefüllt wird zuerst erzeugt es einen 'DimName Fehler':

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 

I schaue auf den darunter liegenden Grund.

Antwort

-1

Nicht sicher über die zugrunde liegende Ursache, aber interstingly dies funktioniert:

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")