我的excel数据文件的格式是:
day value
01-01-2000 00:00:00 4
01-01-2000 00:01:00 3
01-01-2000 00:02:00 1
01-01-2000 00:04:00 1
我打开我的文件,用这个:
ts = read.csv(file=pathfile, header=TRUE, sep=",")
如何将列“值”中的数字为零的附加行添加到数据框中。输出示例:
day value
01-01-2000 00:00:00 4
01-01-2000 00:01:00 3
01-01-2000 00:02:00 1
01-01-2000 00:03:00 0
01-01-2000 00:04:00 1
4条答案
按热度按时间dxxyhpgq1#
现在,这在
padr
包中完全自动化。只需要一行代码。请参阅
vignette("padr")
或this博客文章了解其工作原理。btxsgosb2#
我认为这是一个更通用的解决方案,它依赖于创建一个所有时间戳的序列,将其用作新 Dataframe 的基础,然后在适用的情况下在df中填写原始值。
ukxgm1gy3#
试试看:
请注意,您需要强制加载第一列中的字符串作为字符而不是因子,否则您将遇到rbind问题。要使day列成为因子,请执行以下操作:
i7uaboj44#
Tidyr提供了一个很好的
complete
函数来为隐式缺失的数据生成行。可以使用fill参数将NA转换为0。请注意,我将日期的粒度设置为分钟,因为数据集需要每分钟一行。