R 按组创建新的POSIXct序列
我有一个数据帧(df),有3列:ID,时间戳(间隔30秒),状态: 我试图将每组的采样率提高到1秒(而不是30秒),并用以前有效的值填充变量“state”的值 为此,我通过“ID”创建了一个新的时间索引,因为不同ID之间的时间戳可能存在较大的间隔/重叠:R 按组创建新的POSIXct序列,r,R,我有一个数据帧(df),有3列:ID,时间戳(间隔30秒),状态: 我试图将每组的采样率提高到1秒(而不是30秒),并用以前有效的值填充变量“state”的值 为此,我通过“ID”创建了一个新的时间索引,因为不同ID之间的时间戳可能存在较大的间隔/重叠: Time.index <- df %>% group_by(ID) %>% expand(seq.POSIXt(from =first(df$Time), to = last(df$Time),by
Time.index <- df %>%
group_by(ID) %>%
expand(seq.POSIXt(from =first(df$Time), to = last(df$Time),by = 1, units = "seconds"))%>%
ungroup()
Time.index%
分组依据(ID)%>%
展开(seq.POSIXt(from=first(df$Time),to=last(df$Time),按=1,units=“seconds”))%>%
解组()
它工作得很好,除了它通过ID创建了一个新的时间序列,但是获取了整个数据帧的第一个和最后一个时间值,而不是每个ID的时间值。有没有关于如何解决这个问题的提示
感谢您使用
seq.POSIXt(from=first(Time),to=last(Time),by=1,units=“seconds”)
代替(没有df$
在dplyr内部)@docendodiscimus工作得很有魅力。谢谢!我相信这是一个愚蠢的错误,但学习的曲线是陡峭的;)
Time.index <- df %>%
group_by(ID) %>%
expand(seq.POSIXt(from =first(df$Time), to = last(df$Time),by = 1, units = "seconds"))%>%
ungroup()