首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

一行代码对日期插值

如何只用一行代码就高效优美地把这些缺失的日期补上呢?...例如,在我们的样例数据集sample中,id=1的观测对应的日期最小值的为01-08,最大值为01-14,而我们希望填充这两个日期“之间”的所有值。...同理,对于id=2的观测,日期最大值为02-09,最小值为02-12,我希望填充就是02-10,02-11这两天。...思路和情况1类似,我们先构造CJ数据集,只不过在这里我们seq函数的起讫点不再是固定值,而是每个id对应日期最大值与最小值: # 建立完整的日期序列 # 注意min和max函数的作用 CJ <- dt...拓 展 等等,你不是说可以在一行当中搞定的吗?当然没问题,以上文提到的第二种情况为例,我们可以把两行合并为一行: # 把两行代码合并成一行 dt[dt[, .

1.4K30

在mysql中使用group by和order by取每个分组中日期最大一行数据,亲测有效

在mysql中使用group by进行分组后取某一列的最大值,我们可以直接使用MAX()函数来实现,但是如果我们要取最大值对应的ID,那么我们需要取得整行的数据。...from monitor_company_event t GROUP BY t.company_name,t.row_key,t.event_subType 执行以上SQL语句确实可以得到每个分组中最大的...create_time,但是经检查发现最大的create_time对应event_id不是同一行的数据,如果我们要对event_id进行操作的话,结果肯定是错误的。...t.company_name,t.row_key,t.event_subType 从以上SQL中可以看出,我们先对所有的数据按create_time时间降序排列,然后再分组,那么每个分组中排在最上面的记录就是时间最大的记录

9K30

【技巧】如何快速按照日期分组

问题的提出 在处理数据的时候,我们常常需要按照日期对数据进行分类汇总,例如每周、每月、每年汇总等。常见的做法是建立一个用于分类的变量,然后再按照这个变量进行汇总。...再次,这种常规方法很难处理一些不规则的日期间隔,例如我希望每隔3天对数据汇总一次;或者再变态一点,我希望把数据分成两组:一组是周三,另一组是非周三。遇到这种情况,我们该怎么办呢?...实战操作 生成样例数据集 首先我们生成一个样例数据集: # 生成 100 个日期,从2018-01-01开始 set.seed(42) n <- 100 dt <- data.table(date =...# 按照是否为“周三”进行分组:“True”即周三,“False”即除周三以外的任何日期 dt[, .(x = mean(x)), keyby = .

2.4K30
领券