如何使用熊猫根据另一列的数据获取一列的平均值?

时间:2020-02-23 14:31:23

标签: python pandas

我正在尝试通过jupyterlab使用熊猫在Excel电子表格上进行一些复杂的分析。我想计算另一列(“订单”)中的相应单元格有间隔时,一列(“增量”)中的平均时间差。

换句话说:

Orders     Delta
1          00:00:00
2          00:05:32
4          00:10:32
5          00:12:83
6          00:15:83

我希望能够在整个电子表格中获得订单2和订单4之间的平均时间增量(因为缺少#3)。然后,我想获得没有间隙(订单是连续的)的订单之间的平均值。

我为您如此含糊而道歉,我对Python有点(非常)陌生,甚至无法理解如何做到这一点也很麻烦。我目前拥有可以从XLSX提取并从订单日期时间计算出“增量”的功能代码,但是上面遇到了麻烦。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我们来看一下:

  1. 您想要Orders中没有“空白”的地方,即订单索引之间的差异正好是1。您可以通过df['Orders'].diff()==1

  2. 您想要这些位置的时差。df['Delta'].diff()[df['Orders'].diff()==1]

  3. 您想要他们的平均值:df['Delta'].diff()[df['Orders'].diff()==1].mean()

我从这段代码中得到了Timedelta('0 days 00:03:47.666666')作为输出。
这就是您需要的吗?