我使用以下代码来区分我的“信号”列中的时间序列,并创建一个包含该列的新列“活动”。如果信号强于X,则在新列中将产生1,如果较弱,则为0.当我取每个值与下一个值之间的差异时,显然将留下比“信号”少一行的行。
df$Signal <- as.numeric(df$Signal)
Activity <- ifelse(diff(df$Signal)>=4, 1, 0)
Activity <- as.data.frame(Activity)
df <- rbind.fill(df, Activity)
但是,当我使用rbind.fill时,它返回df,新列“Activity”仅包含“NA”。
答案 0 :(得分:0)
你的代码对我来说很好。但我猜(只是一个猜测,因为你没有创建一个具有预期输出的可重现的例子)你想要的东西:
transform(df, Activity = c(0,ifelse(diff(Signal)>=4, 1, 0)))