r - lubridate::round_date () 在大型数据集上给出全零
问题描述
我正在尝试使用以下代码将 lubridate::round_date () 用于大数据集(约 3 百万行 * 23 列)上的日期时间列:
time_bin <- "1 hour"
data %<>% mutate(rounded_time = lubridate::round_date(UTC_datetime, time_bin),
time_format = strftime(rounded_time,format = "%Y-%m-%d %H:%M:%S"))%>% droplevels()
在子采样数据集(1000 行)上运行此代码时:
data<-data[1:1000,]
一切正常,时间四舍五入到最接近的小时:
head(data)[,25]
[1] “2019-10-01 04:00:00” “2019-10-01 05:00:00” “2019-10-01 06:00:00” “2019-10-01 07:00:00” " [5] "2019-10-01 09:00:00" "2019-10-01 10:00:00"
而在整个数据集上运行代码时,我会得到日期和时间应该是全零:
head(data)[,25]
[1] “2019-10-01 00:00:00” “2019-10-01 00:00:00” “2019-10-01 00:00:00” “2019-10-01 00:00:00” " [5] "2019-10-01 00:00:00" "2019-10-01 00:00:00"
任何想法可能出了什么问题以及如何解决它?
谢谢!伊丹
解决方案
推荐阅读
- javascript - 从对象中删除属性,同时在 Javascript / TypeScript 中保持原始对象不变
- html - 图像最大宽度响应和自动
- javascript - 如何在子类中继承父类字典中的键
- intellij-idea - 在idea中创建groovy脚本失败
- r - 使用另一个数据框和 grepl 在数据框中搜索字符串
- jmeter - 如何使用非 gui JMeter 获取多个输出文件?
- openldap - 无法使用 ldapsearch 获取 userPassword
- reactjs - 通过改变子组件React js的状态来隐藏父组件的按钮
- regex - 环顾 Markdown 正则表达式
- python - 在 Pytorch 中定义数据加载器时使用类有什么好处?