2017-02-28 86 views
0

嗨我想加载一些日期作为我的数据框的列名,但他们只会显示为数字(例如11595),即使我强迫他们与as。日期数据框中的列名可以追溯到数字

是否有另一种方法可以做到这一点?谢谢!

dates <- seq(as.Date("2000-1-1"), as.Date("2018-10-1"), by="3 months") -1 
d.test <- data.frame(matrix(0, ncol = 8, nrow = 8)) 

for (i in 1:8) { 

    colnames(d.test)[i] <- as.Date(dates[i], "yyyy-mm-dd") 
} 
+0

'names'或'colnames'或'dimnames'只能是字符串。你的日期被转换为数字,然后转换为字符串。 – thelatemail

回答

0

用as.character设置日期,当不需要时也避免循环。请参阅?colnames或?rownames,赋值应该是字符向量

dates <- seq(as.Date("2000-1-1"), as.Date("2018-10-1"), by="3 months") -1 
d.test <- data.frame(matrix(0, ncol = 8, nrow = 8)) 
colnames(d.test) <- as.character(dates)[1:ncol(d.test)] 
+0

谢谢@ R.S。 ! – lapioche75

0

请参阅?colnames。列名称的值应该是一个字符向量,并将使用as.character()进行强制。列名称只是标签,而不是变量类型。