我是 R 新手,我对此处描述的 padr 包有一些问题。
我有一个缺少小时数的小时数据集,我想插入一行来输入缺失数据的值。我正在尝试使用 padr 包中的 pad 函数和 fill_by_value 函数,但是当我使用 pad 函数时出现错误。
称为 Mendo 的数据表示为:
Date.Local Time.Local Sample.Measurement
2016-01-01 00:00:00 3
2016-01-01 00:01:00 4
2016-01-01 00:02:00 1
2016-01-01 00:04:00 4
2016-01-01 00:05:00 5
我希望最终数据看起来像:
Date.Local Time.Local Sample.Measurement
2016-01-01 00:00:00 3
2016-01-01 00:01:00 4
2016-01-01 00:02:00 1
2016-01-01 00:03:00 999
2016-01-01 00:04:00 4
2016-01-01 00:05:00 5
我的印象是打包的 padr 需要一个 datetime POSIXct 列,所以我使用命令
Mendo$Time.Local <- as.POSIXct(paste(Mendo$Date.Local, Mendo$Time.Local), format = '%Y-%m-%d %H:%M')
要得到:
Time.Local Sample.Measurement
2016-01-01 00:00:00 3
2016-01-01 00:01:00 4
2016-01-01 00:02:00 1
2016-01-01 00:04:00 4
2016-01-01 00:05:00 5
现在我尝试使用上面提供的链接中的指令之类的 pad 功能。我的代码行是:
Mendo_padded <- Mendo %>% pad
我得到了错误:
if (total_invalid == nrow(x)) { 中的错误:需要 TRUE/FALSE 的缺失值另外:警告消息:在 if (unique(nchar(x_char)) == 10) { 中:条件的长度 > 1 并且只使用第一个元素
如果这可行,我将使用该命令
Mendo_padded %>% fill_by_value(Sample.Measurement, value = 999)
使所有缺失的小时 Sample.Measurement 值为 999。
我很乐意就我可能做错的事情以及如何让这段代码正常工作提供反馈、建议或评论!谢谢!