我已加载数据记录器CSV文件.在这里我包括一个片段.Date_time列按月/日/年和小时排序:分钟:秒:
date_time<-c("6/5/22 10:22:01 AM", "6/5/22 10:23:01 AM", "6/5/22 10:24:01 AM", "6/5/22 10:25:01 AM", "6/5/22 10:26:01 AM", "6/5/22 10:27:01 AM",
"6/5/22 10:28:01 AM", "6/5/22 10:29:01 AM", "6/5/22 10:30:01 AM", "6/5/22 10:31:01 AM", "6/5/22 10:32:01 AM", "6/5/22 10:33:01 AM")
temp<-c(21.296, 22.047, 22.798, 22.422, 22.172, 22.673, 22.360, 22.110, 21.922, 21.797, 21.672, 21.609)
df<-data.frame(date_time,temp)
df
date_time temp
1 6/5/22 10:22:01 AM 21.296
2 6/5/22 10:23:01 AM 22.047
3 6/5/22 10:24:01 AM 22.798
4 6/5/22 10:25:01 AM 22.422
5 6/5/22 10:26:01 AM 22.172
6 6/5/22 10:27:01 AM 22.673
7 6/5/22 10:28:01 AM 22.360
8 6/5/22 10:29:01 AM 22.110
9 6/5/22 10:30:01 AM 21.922
10 6/5/22 10:31:01 AM 21.797
11 6/5/22 10:32:01 AM 21.672
12 6/5/22 10:33:01 AM 21.609
Date_time列显示为字符,
str(df)
'data.frame': 12 obs. of 2 variables:
$ date_time: chr "6/5/22 10:22:01 AM" "6/5/22 10:23:01 AM" "6/5/22 10:24:01 AM" "6/5/22 10:25:01 AM" ...
$ temp : num 21.3 22 22.8 22.4 22.2 ...
但我希望它是一个posixct变量,所以我应用了as.POSIXct函数:
df$date_time<-as.POSIXct(df$date_time)
df
date_time temp
1 0006-05-22 10:22:01 21.296
2 0006-05-22 10:23:01 22.047
3 0006-05-22 10:24:01 22.798
4 0006-05-22 10:25:01 22.422
5 0006-05-22 10:26:01 22.172
6 0006-05-22 10:27:01 22.673
7 0006-05-22 10:28:01 22.360
8 0006-05-22 10:29:01 22.110
9 0006-05-22 10:30:01 21.922
10 0006-05-22 10:31:01 21.797
11 0006-05-22 10:32:01 21.672
12 0006-05-22 10:33:01 21.609
然而,它将日子视为年,反之亦然. 通过指定格式,它不起作用:
df$date_time<-as.POSIXct(df$date_time,format="%dd-%mm-%YYYY %H:%M:%S")
df
date_time temp
1 0006-05-22 10:22:01 21.296
2 0006-05-22 10:23:01 22.047
3 0006-05-22 10:24:01 22.798
4 0006-05-22 10:25:01 22.422
5 0006-05-22 10:26:01 22.172
6 0006-05-22 10:27:01 22.673
7 0006-05-22 10:28:01 22.360
8 0006-05-22 10:29:01 22.110
9 0006-05-22 10:30:01 21.922
10 0006-05-22 10:31:01 21.797
11 0006-05-22 10:32:01 21.672
12 0006-05-22 10:33:01 21.609
我该怎么解决这个问题?任何建议都会有所帮助
提前感谢!