如何在Pandas列中統計特定值的出現次數?


統計列中特定值的出現次數是資料分析中的一項常見任務。幸運的是,Python中的pandas庫提供了一種快速簡便的方法來使用`value_counts()`方法實現此目的。此方法返回一個Pandas序列,其中包含列中每個唯一值的計數。然後,您可以使用方括號和要計數的值來訪問特定值的計數。

在本文中,我們將逐步介紹如何在pandas列中統計特定值的出現次數。我們將介紹如何建立一個pandas DataFrame、將CSV檔案讀入DataFrame以及使用`value_counts()`方法統計列中特定值的出現次數。我們還將討論一些統計出現次數的常見用例,例如查詢列中最常見的值或識別資料質量問題。

在閱讀完本文後,您將深入瞭解如何在pandas列中統計特定值的出現次數,並且能夠將此知識應用到您自己的資料分析專案中。

使用`value_counts()`方法

統計pandas列中特定值出現次數最簡單的方法是使用`value_counts()`方法。此方法返回一個Pandas序列,其中包含列中每個唯一值的計數。然後,您可以使用方括號和要計數的值來訪問特定值的計數。

請考慮以下程式碼。

示例

import pandas as pd

# create a sample DataFrame
data = {'fruit': ['apple', 'orange', 'banana', 'apple', 'orange']}
df = pd.DataFrame(data)

# use value_counts() to count occurrences of 'apple'
count = df['fruit'].value_counts()['apple']

print(f"The number of apples is: {count}")

解釋

在這個例子中,我們首先建立一個包含名為“fruit”列的樣本DataFrame。然後,我們使用`value_counts()`方法統計“fruit”列中每個唯一值的出現次數。最後,我們使用方括號和值“apple”來訪問值“apple”的計數。

輸出

The number of apples is: 2

使用`groupby()`方法

另一種統計pandas列中特定值出現次數的方法是使用`groupby()`方法。此方法按指定列中的值對DataFrame進行分組,並允許您對每個組執行操作。

請考慮以下程式碼。

示例

import pandas as pd

# create a sample DataFrame
data = {'fruit': ['apple', 'orange', 'banana', 'apple', 'orange']}
df = pd.DataFrame(data)

# use groupby() and size() to count occurrences of 'apple'
count = df.groupby('fruit').size()['apple']

print(f"The number of apples is: {count}")

解釋

在這個例子中,我們首先建立一個包含名為“fruit”列的樣本DataFrame。然後,我們使用`groupby()`方法按“fruit”列中的值對DataFrame進行分組。然後,我們使用`size()`方法統計“fruit”列中每個唯一值的出現次數。最後,我們使用方括號和值“apple”來訪問值“apple”的計數。

輸出

The number of apples is: 2

使用布林掩碼

統計pandas列中特定值出現次數的第三種方法是使用布林掩碼。布林掩碼是一個True/False值的陣列,您可以用它來過濾DataFrame。

請考慮以下程式碼。

示例

import pandas as pd

# create a sample DataFrame
data = {'fruit': ['apple', 'orange', 'banana', 'apple', 'orange']}
df = pd.DataFrame(data)

# use a boolean mask to count occurrences of 'apple'
mask = df['fruit'] == 'apple'
count = len(df[mask])

print(f"The number of apples is: {count}")

解釋

在這個例子中,我們首先建立一個包含名為“fruit”列的樣本DataFrame。然後,我們建立一個布林掩碼,對於“fruit”列的值為“apple”的行,其值為True。然後,我們將布林掩碼應用於DataFrame,並使用`len()`函式來統計與掩碼匹配的行數。最後,我們打印出與掩碼匹配的行數。

輸出

The number of apples is: 2

結論

總之,統計pandas列中特定值的出現次數是資料分析中的一項常見任務,pandas提供了多種方法來完成此任務。

在本文中,我們介紹了三種不同的統計出現次數的方法:使用`value_counts()`方法、使用`groupby()`方法和使用布林掩碼。

無論您選擇哪種方法,統計pandas列中特定值的出現次數都是資料分析師和資料科學家的一項重要技能。

更新於:2023年8月3日

35K+ 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告