gpt4 book ai didi

python - 将数据框分组并按组计算归一化标准差?

转载 作者:太空宇宙 更新时间:2023-11-04 03:15:36 25 4
gpt4 key购买 nike

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

           product  cost_per_quantity
12779 0101010G0BB 160.788357
12653 0101010G0BC 179.493956
10390 0101010I0AA 0.425916
20361 0101010I0AA 0.603650
22504 0101010I0AA 0.633082

创建于:

df = pd.DataFrame({ 'product': ['0101010G0BB', '0101010G0BC', '0101010I0AA', '0101010I0AA', '0101010I0AA'], 'cost_per_quantity': [160.788357, 179.493956, 0.425916, 0.603650, 0.633082]})

现在我想找到 cost_per_quantity 变化最大的产品。

例如,我想检查产品 0101010I0AA 并在其三个条目中找到 cost_per_quantity 的归一化标准差,然后将其与归一化标准进行比较其他产品的偏差。

处理此问题的最佳方法是什么?我试过:

df1 = df.groupby('product').agg(np.std)

但这只会给我一堆 NaN

最佳答案

对于聚合 df.groupby('product').agg(np.std) 是正确的,但对于 1-观察组,这返回 NaN 作为样本标准差不能为 1-观察组计算。标准差的 Numpy 默认值是总体标准差,但我猜 Pandas 会覆盖它。

您可以使用总体标准差来获得这些组的 0。

如果您想查看相对于均值的相对偏差,可以使用 coefficient of variation :

df.groupby('product').apply(lambda x: np.std(x) / np.mean(x))

现在 np.std 在 lambda 函数中,它的行为符合预期。

关于python - 将数据框分组并按组计算归一化标准差?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36399447/

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