Pandas 中的絕對頻率和相對頻率


在統計學中,“頻率”一詞表示給定資料樣本中某個值出現的次數。作為一種用於數學和科學分析的軟體,Pandas 具有許多內建方法來計算給定樣本的頻率。

絕對頻率 它與頻率相同,其中計算資料元素出現的次數。在下面的示例中,我們只需計算城市名稱在一個給定的 DataFrame 中出現的次數,並將其報告為頻率。

方法 1 - 我們使用名為 .value_counts 的 pandas 方法。

示例

import pandas as pd
# Create Data Frame
data = ["Chandigarh","Hyderabad","Pune","Pune","Chandigarh","Pune"]
# use the method .value_counts()
df = pd.Series(data).value_counts()
print(df)

輸出

執行以上程式碼將得到以下結果:

Pune          3
Chandigarh    2
Hyderabad     1
dtype: int64

方法 2 - 我們使用名為 .crosstab 的 pandas 方法

示例

import pandas as pd
data = ["Chandigarh","Hyderabad","Pune","Pune","Chandigarh","Pune"]
df = pd.DataFrame(data,columns=["City"])
tab_result = pd.crosstab(index=df["City"],columns=["count"])
print(tab_result)

輸出

執行以上程式碼將得到以下結果:

col_0        count
City
Chandigarh   2
Hyderabad    1
Pune         3

相對頻率 - 這是給定頻率與資料樣本中觀察總數之間的分數。因此,該值可以是浮點值,也可以表示為百分比。為了計算它,我們首先按照第一種方法計算頻率,然後將其除以觀察總數,觀察總數使用 len() 函式計算得出。

示例

import pandas as pd
# Create Data Frame
data = ["Chandigarh","Hyderabad","Pune","Pune","Chandigarh","Pune"]
# use the method .value_counts()
df = pd.Series(data).value_counts()
print(df/len(data))

輸出

執行以上程式碼將得到以下結果:

Pune 0.500000
Chandigarh 0.333333
Hyderabad 0.166667
dtype: float64

更新於: 2020-07-03

686 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.