是否有一个R函数可以从POSIXct中提取一年中的某一天?
我有一个大致如下所示的数据表:是否有一个R函数可以从POSIXct中提取一年中的某一天?,r,aggregate,posixct,R,Aggregate,Posixct,我有一个大致如下所示的数据表: Date_Time Water_Level Date 6-28-2019 15:00:00 184 6-28-2019 6-28-2019 15:15:00 186 6-28-2019 6-28-2019 15:30:00 180 6-28-2019 6-29-2019 10:15:00
Date_Time Water_Level Date
6-28-2019 15:00:00 184 6-28-2019
6-28-2019 15:15:00 186 6-28-2019
6-28-2019 15:30:00 180 6-28-2019
6-29-2019 10:15:00 179 6-29-2019
6-29-2019 10:30:00 188 6-29-2019
6-29-2019 10:45:00 190 6-29-2019
我希望能够使用聚合函数来查找整个数据集的日平均水位,因此它看起来像这样:
Date_Time Water_Level
6-28-2019 183.3
6-29-2019 185.6
我使用了以下代码,但出于某种原因,它只聚合了部分数据,而不是全部数据。如果我将日期列(下面的第二个代码)的日期\时间列切换出去,它会执行此操作,但日期顺序不正确,导致我需要运行一行来重新排序它们
LSUP1<-aggregate(Water_Level_m~Date_Time, LSUP, mean)
LSUP1<-LSUP1[order(as.Date(LSUP1$Date, format="%m/%d/%Y")),]
LSUP1确定:
不过,首选的方法是通过标准时间格式化程序函数。一年中的日期是%j
根据帮助(sptrftime)
:
这些函数都是矢量化的,很容易将作为.integer()调用或作为数值调用:
R> as.integer(format(as.Date(now) + cumsum(runif(5)*20), "%j"))
[1] 61 65 84 96 99
R>
R> format(now, "%j")
[1] "049"
R>
R> as.integer(format(as.Date(now) + cumsum(runif(5)*20), "%j"))
[1] 61 65 84 96 99
R>