R中数据聚合的建议
您好,我有一个超过3632200+obs的数据帧,我正试图从中找到一些有用的信息。我已经清理了一点,所以现在数据是这样的R中数据聚合的建议,r,dataframe,R,Dataframe,您好,我有一个超过3632200+obs的数据帧,我正试图从中找到一些有用的信息。我已经清理了一点,所以现在数据是这样的 Order Lane Days 18852324 796005 - Ahmedabad 2 232313 796008 - Delhi 5 63963231 796005 -
Order Lane Days
18852324 796005 - Ahmedabad 2
232313 796008 - Delhi 5
63963231 796005 - Ahmedabad 5
23501231 788152 - Chennai 1
2498732 796008 - Delhi 2
231413 796005 - Ahmedabad 3
75876876 796012 - Chennai 4
14598676 796008 - Delhi 4
订单是不同的订单Id,它们都是唯一的,Lane是订单交付的不同路径Lane可以为不同的订单重复,天数通过区分订单交付日期和创建日期,使用R中的difftime函数计算
现在我要做的就是这样
现在我可以通过使用R中的分位数函数在不同的车道上计算98%的订单完成日期。
但是,我如何在第1天到第5天跨多条通道完成%的订单?
任何帮助都将不胜感激。
谢谢没有数据很难说,但可能是这样的:
library(purrr)
#df = your data
max_days = max(df$days)
aggregate_fun = function(x){
days = factor(x$days,levels=c(1:max_days))
prop.table(table(days))
}
df = split(df,df$lane)
results = reduce(lapply(df,aggregate_fun),rbind)
您是否有可复制的示例数据,最好是之前的,最好是之后的?如果没有这些,很难提供代码解决方案。您好,我添加了一个示例数据,before数据有76列,我认为这对我们的问题没有任何用处。您好-一般的指导原则是使用dput或类似方法来允许重新导入数据,而不是从屏幕截图中键入数据。你能从截图中删除你的数据子集吗?嗨,我又试过编辑了。我希望这就是你想要的。我解不出这个问题。44.13和48.95天之间的时间差如何等同于第1天到第5天?您如何定义已实现的订单?感觉我可能错过了一些东西,但我不知道从哪里开始。你好,谢谢你的回答。只是一个问题我们为什么要这样做?df=splitdf,df$laneTo将数据框分隔为仅包含一条车道的观测值的列表。然后我们可以使用表格分别计算每条车道的天数百分比。非常感谢。