Convert/Maintain Dates in Header from Excel to R
我有一个 Excel 电子表格,标题中有日期。我想将电子表格导入 R,大概使用 read.xlsx() 函数。但是,日期从 Excel 转换为内部值的字符串,前面带有 "X"。我希望将日期保留为日期类,或将字符串转换为日期。我知道我可以使用 as.Date() 如果日期至少是一种格式,或者是从指定来源开始的天数,但它有 "X"。
非常感谢您的帮助。
例如。
excel 电子表格"Practice"
1 2 3 4 | Sample 09-Jul 10-Jul 11-Jul 1 3 10 2 2 5 0 3 1 0 0 |
然后在 R:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | practice<-read.xlsx("Practice.xlsx") Sample X42925 X42926 X42927 1 1 3 10 2 2 2 5 0 NA 3 3 1 0 0 practice2=gather(practice,Date,value,-Sample,na.rm=TRUE) Sample Date value 1 1 X42925 3 2 2 X42925 5 3 3 X42925 1 4 1 X42926 10 5 2 X42926 0 6 3 X42926 0 7 1 X42927 2 9 3 X42927 0 practice2$Date=as.Date(practice2$Date) Error in charToDate(x) : character string is not in a standard unambiguous format |
值
您应该能够使用以下内容转换您的日期列。这假定以
1 2 | dates <- as.numeric(substr(practice2$Dates, 2, nchar(practice2$Dates))) practice2$Dates <- as.Date(dates, origin = '1899-12-30') |
演示
尝试将 Excel 文件另存为 .csv。这会将您的数据和日期转换为纯文本,应该可以毫无问题地导入 R。
或者,尝试以下方法之一:
http://www.milanor.net/blog/read-excel-files-from-r/
祝你好运!