1
我有一個數據幀,看起來像這樣:分組數據框並按組計算歸一化標準偏差?
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
s。
我認爲公式是正確的,但對於兩組你只有1個觀測值,你不能計算標準偏差。 – ayhan
對於總體標準偏差,您可以使用'df.groupby('product')。std(ddof = 0)',這將爲1個觀察組返回0。其實'ddof = 0'是'np.std'的默認值,但我認爲熊貓正在重寫'agg'中的值。 – ayhan
@ayhan謝謝!我認爲這是返回原始s.d.雖然,沒有正常化 - 任何想法如何可能會返回正常化的s.d.? – Richard