gpt4 book ai didi

python - 将计数添加到由 group-by cut 生成的 df

转载 作者:行者123 更新时间:2023-12-01 01:01:50 25 4
gpt4 key购买 nike

.size().count() 似乎都不会产生单个计数列应用于使用 .cut() 方法生成的数据。

这可能只是语法问题,但我尝试过 .size().count().describe() 并获取具有组计数的多个列,但不是 1 个单列。

#python 2.7
import pandas as pd
import numpy as np


np.random.seed(seed=1)
df = pd.DataFrame({"var1": np.random.random(100),
"var2": np.random.random(100) + 5})

# Bin the data frame by "var1" with 10 bins...
df = df.groupby(pd.cut(df.var1, 10)).describe().var2[['mean','count']]
df =df.reset_index()
print df"

#Results:
var1 mean count
0 (-0.000874, 0.099] 5.546257 11.0
1 (0.099, 0.198] 5.434613 12.0
2 (0.198, 0.297] 5.483686 9.0
3 (0.297, 0.396] 5.313241 6.0
4 (0.396, 0.494] 5.537168 13.0
5 (0.494, 0.593] 5.518476 10.0
6 (0.593, 0.692] 5.614630 10.0
7 (0.692, 0.791] 5.443415 10.0
8 (0.791, 0.89] 5.464804 7.0
9 (0.89, 0.989] 5.418756 12.0

#用提供所需答案的代码更新了发布的问题。

最佳答案

如果是这种情况,您需要transformpd.Series.groupby()

df['cnt']=df.groupby(pd.cut(df.var1, 10))['var2'].transform('count')

关于python - 将计数添加到由 group-by cut 生成的 df,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55736320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com