为了便于数据操作,我在 R 中有一个数据框,其中包含一列,其中包含日期和小时值,如下所示:6 月 5 日 23 日。“6 月 5 日”是月份(不包括年份),“23”是小时(包括分钟和秒会在以后的数据操作中引起问题。)我使用以下命令成功地将这个大数据框按日期和小时拆分为几个较小的数据框:
dat<-split(df,with(df, df_datehour),drop=FALSE)
但是,正如预期的那样,拆分按字典顺序对我的数据进行了排序,因此它被组织为 april --> june --> may 而不是 april --> may --> june。我尝试使用我在网上找到的修复程序来解决这个问题,即使用 as.Date() 转换我的日期列。不过,它似乎不起作用。我正在使用以下代码行转换为日期:
dat<-split(df,as.Date(with(df, df_datehour),format="%B %d %H"),drop=FALSE)
这行代码确实设法按月和日按顺序排列数据,但它完全减少了小时,正如您从我的结果片段中看到的那样:
labels(dat)
[57] "2015-06-05"
有谁知道解决此问题的方法?