Pandas 分組 - 統計每個組合的出現次數


若要按列分組並統計 Pandas 中每個組合出現的次數,我們將使用 DataFrame.groupby() 和 size()。groupby() 方法將 DataFrame 分成不同的組。

首先,讓我們匯入熊貓庫並用 pd 設定別名 -

import pandas as pd

初始化列表資料 -

# initializing the data
mylist = {'Car': ['BMW', 'Mercedes', 'Lamborgini', 'Audi', 'Mercedes', 'Porche', 'RollsRoyce', 'BMW'], 'Place': ['Delhi', 'Hyderabad', 'Chandigarh', 'Bangalore', 'Hyderabad', 'Mumbai', 'Mumbai','Delhi'],
'Sold': [95, 80, 80, 75, 90, 90, 95, 50 ]}

接下來,我們將建立 DataFrame -

# DataFrame
dataFrame = pd.DataFrame(mylist, columns=['Car', 'Place', 'Sold'])

現在,使用 groupby() 並用 size() 統計出現次數 -

print("Counting the occurrences...")
res = dataFrame.groupby(['Car', 'Place']).size()

以下是統計每個組合出現次數的程式碼 -

示例

# importing library
import pandas as pd

# initializing the data
mylist = {'Car': ['BMW', 'Mercedes', 'Lamborgini', 'Audi', 'Mercedes', 'Porsche', 'RollsRoyce', 'BMW'],
'Place': ['Delhi', 'Hyderabad', 'Chandigarh', 'Bangalore', 'Hyderabad', 'Mumbai', 'Mumbai','Delhi'],
'Sold': [95, 80, 80, 75, 90, 90, 95, 50 ]}

# DataFrame
dataFrame = pd.DataFrame(mylist, columns=['Car', 'Place', 'Sold'])

print(dataFrame)

print("Counting the occurrences...")
res = dataFrame.groupby(['Car', 'Place']).size()

# Displaying the occurrences
print(res)

輸出

將生成以下輸出 -

          Car           Place       Sold
0         BMW           Delhi         95
1    Mercedes       Hyderabad         80
2  Lamborgini      Chandigarh         80
3        Audi       Bangalore         75
4    Mercedes       Hyderabad         90
5     Porsche          Mumbai         90
6  RollsRoyce          Mumbai         95
7         BMW           Delhi         50
Counting the occurrences...
Car         Place
Audi        Bangalore     1
BMW         Delhi         2
Lamborgini  Chandigarh    1
Mercedes    Hyderabad     2
Porsche     Mumbai        1
RollsRoyce  Mumbai        1
dtype: int64

更新於:07-Sep-2021

2000+ 瀏覽次數

開啟您的 職業生涯

完成課程,取得認證

開始學習
廣告
© . All rights reserved.