小编faz*_*i23的帖子

R:查找每天第一次出现的值

我有一个带有日期时间和值(在 0 和 1 之间)的 data.frame,我想找到value=1 per day第一次出现

df <- read.table(header = TRUE, text = '
Datetime                   Value
"2016-12-01 23:45:00"      0
"2016-12-01 23:50:00"      1
"2016-12-02 00:05:00"      1
"2016-12-02 00:10:00"      0
"2016-12-03 04:10:00"      0
"2016-12-03 04:15:00"      0
"2016-12-04 12:10:00"      1
"2016-12-04 12:15:00"      1
')
df$Datetime <- as.POSIXct(df$Datetime, "%Y-%m-%d %H:%M:%S", tz="UTC")
View(df)
Run Code Online (Sandbox Code Playgroud)

我想要的是:

2016-12-01 23:50:00      1
2016-12-02 00:05:00      1
2016-12-04 12:10:00      1
Run Code Online (Sandbox Code Playgroud)

我试图用 match() 和 aggregate() 解决问题,但到目前为止还没有运气。此外,我能够用 for 循环解决问题,但它是 a) 非常慢并且 b) 可能不是它本来的样子。

r dataframe

4
推荐指数
1
解决办法
2809
查看次数

标签 统计

dataframe ×1

r ×1