计算数据帧每两个值的mad()

时间:2018-07-23 07:43:51

标签: python pandas dataframe grouping

我有一个看起来像这样的数据框:

 index                                   data
11727.213152                           -62.260842
12144.825397                           -26.384420
12566.138322                           -47.091084
12981.362812                           -74.528391

我想计算数据列中每两项的mad()值,我该怎么做? 有没有一种方法可以将数据列分为两组(或更多组)? 还是我应该简单地遍历df并计算两个结果值的疯狂程度?

谢谢!

1 个答案:

答案 0 :(得分:2)

我认为需要groupby通过由//划分的地板创建的辅助数组:

s = df.groupby(np.arange(len(df)) // 2)['data'].mad()
print (s)
0    17.938211
1    13.718653
Name: data, dtype: float64

详细信息

print (np.arange(len(df)) // 2)
[0 0 1 1]