【发布时间】:2017-11-02 16:02:58
【问题描述】:
这是我的数据框的一个例子:
df_lst = [
{"wordcount": 100, "Stats": 198765, "id": 34},
{"wordcount": 99, "Stats": 98765, "id": 35},
{"wordcount": 200, "Stats": 18765, "id": 36},
{"wordcount": 250, "Stats": 788765, "id": 37},
{"wordcount": 345, "Stats": 12765, "id": 38},
{"wordcount": 456, "Stats": 238765, "id": 39},
{"wordcount": 478, "Stats": 1934, "id": 40},
{"wordcount": 890, "Stats": 19845, "id": 41},
{"wordcount": 812, "Stats": 1987, "id": 42}]
df = pd.DataFrame(df_lst)
df.set_index('id', inplace=True)
df.head()
DF:
Stats wordcount
id
34 198765 100
35 98765 99
36 18765 200
37 788765 250
38 12765 345
我想计算每个wordcount 范围的平均值Stats,步长为 100,因此新数据框如下所示:
Average wordcount
194567 100
23456 200
2378 300
...
其中 100 表示 0-100 等。我开始编写多个条件,但感觉有一种更有效的方法来实现这一点。感谢您的帮助。
【问题讨论】:
标签: python pandas pandas-groupby