任何人都可以帮助我使用具有以下结构的excel文件的正确导入设置(用于时间序列分析):
label1 varName
label2 random text
label3 random text2
2015-01-01 01:00 85
2015-01-01 02:00 26
2015-01-01 03:00 15
2015-01-01 04:00 13
2015-01-01 05:00 22
2015-01-01 06:00 21
2015-01-01 07:00 13
2015-01-01 08:00 22
2015-01-01 09:00 20
2015-01-01 10:00 31
2015-01-01 11:00 36
2015-01-01 12:00 33
2015-01-01 13:00 33
2015-01-01 14:00 33
label
和varName
是要保留的行。
应删除第2行和第3行。
数据库从2015年1月1日凌晨1点开始,到2015年11月31日晚上11点结束。
对于大多数天,我每小时都有一个值。内部值有NAs
但nrow=8760
我还在学习如何在R中编写时间序列,但是我想象如果R会分割%Y-%m-%d %H:%M
列,那么处理摘要会更容易(比如每天表示)分成两个单独的。
使用RStudio默认readxl库进行简单导入失败,因为导入第2行和第3行并将日期转换为有趣的格式:42005.041666666664
通常我会手工处理(在excel中)并将一个干净的txt导入R.问题是我需要处理61个类似的文件(针对不同的年份和不同的变量)。我确信有一种方法可以自动完成这项任务,但经过6小时的搜索,测试和阅读,我基本上和今天早上一样。
我很欣赏任何暗示或帮助。 谢谢
答案 0 :(得分:0)
Exel通常使用不同的单元格格式来存储日期时间值。
示例1:
Cell value visible to user: 1/28/2019 7:00:00 AM
Exel stores value in general format: 43493.2916666667
43493 - number of days after 1/1/1900
0.2916666667 - % of the day [7*60/(24*60)]
示例2:
Cell value visible to user: 1/28/2019 7:23:33 AM
Exel stores value in general format: 43493.3080208333
0.3080208333 - % of the day [(7*60*60+23*60+33)/(24*60*60)]
答案 1 :(得分:0)
您可以将数字转换回日期时间格式,例如POSIXct
。
library("datetimeutils")
convert_date(42005.041666666664, type = "excel", fraction = TRUE)
## [1] "2015-01-01 01:00:00 CET"