r - 在 R 中标记运行的开始和结束
问题描述
我有下表,想用 T/F 值创建一个“开始”和“结束”列:
扳机 | 开始 | 结尾 |
---|---|---|
1 | 吨 | F |
1 | F | F |
0 | F | 吨 |
1 | 吨 | F |
0 | F | 吨 |
1 | 吨 | F |
1 | F | F |
如何在 R 中做到这一点?
非常感谢
解决方案
根据:
df <- data.frame(Trigger = c(1, 1, 0, 1, 0, 1, 1))
df$Beginning <- df$Trigger & !c(0, df$Trigger[-nrow(df)])
df$End <- !df$Trigger & c(0, df$Trigger[-nrow(df)]
整洁的:
mutate(
df,
Beginning = Trigger & !lag(Trigger, default = FALSE),
End = !Trigger & lag(Trigger, default = TRUE) # May want to use FALSE depending on use case.
)
推荐阅读
- angular - 如何在 PrimeNg MultiSelect 中正确使用 selectedItemsLabel
- python - 导入维基百科 api 时出现错误(python)
- excel - 为什么使用 Range.Resize 属性不会输出预期的 Address 属性值?
- json - 从 FileManager 解码 json - WidgetKit
- vba - MS Access(64 位)VBA 文件复制问题
- discord.js - UnhandledPromiseRejectionWarning:TypeError:无法读取未定义的属性“startsWith”
- npm - Git FTP没有在bitbucket管道中推送构建文件夹
- qt - 使用 QML 在 Qt 上创建动态 MapQuickItem
- sqlite - 网络驱动器上的 sqlite 格式错误
- php - 在 Hostinger 上的 hPanel 上运行 cron 作业