使用Pandas GroupBy 取得每個組別的統計數據
在進行資料分析時,通常需要匯總資料併計算觀察組的統計數據併計算觀察組的統計數據。 Pandas 的 GroupBy 函數提供了一種方便的方法來執行此操作。
要計算群組統計數據,只需在 DataFrame 上使用 .groupby() 方法並指定要分組的欄位即可。然後,您可以使用 .agg() 方法聚合每個群組內的資料。
例如,以下程式碼以「col1」和「col2」列將資料分組並計算平均值:
df['col1', 'col2'].groupby(['col1', 'col2']).mean()
這將傳回一個包含群組統計資訊的DataFrame,類似於:
col3 col4 col5 col6 col1 col2 A B -0.3725 -0.810 0.0325 0.5425 C D -0.4766 -0.110 1.3467 -0.6833 E F 0.4550 0.475 -1.0650 0.0300 G H 1.4800 -0.630 0.6500 0.1700
包含行計數
將行計數加入組別統計資料非常簡單。您可以使用 .size() 方法來計算每個群組中的行數。例如:
df.groupby(['col1', 'col2']).size()
這將傳回一個包含行數的系列,然後您可以將其加入DataFrame 中:
df.groupby(['col1', 'col2']).size().reset_index(name='counts')
包含多個統計資料
除了平均值之外,您還可以使用.agg() 方法計算其他統計數據,例如中位數、最小值和最大值。例如,以下程式碼計算「col4」列的平均值、中位數和最小值:
df.groupby(['col1', 'col2']).agg({'col4': ['mean', 'median', 'min']})
這將傳回包含群組統計資訊的DataFrame,類似於:
col4 mean median min col1 col2 A B -0.3725 -0.810 -1.32 C D -0.4766 -0.110 -1.65 E F 0.4550 0.475 -0.47 G H 1.4800 -0.630 -0.63
其他注意事項
以上是Pandas GroupBy 如何計算統計數據並包含行數以進行資料分析?的詳細內容。更多資訊請關注PHP中文網其他相關文章!