簡體   English   中英

如何正確計算百分比

[英]How to calculate percentage properly

我有三個具有“城市”列的數據框。 所有這三個數據框都有一組不同的城市名稱。

我想找到每個數據框的此列之間的總匹配百分比。

為此,我使用了set方法並得到了三個數組

set1 = set(df1['City'])
set2 = set(df2['City'])
set3 = set(df3['City'])

但是我應該如何找到百分比? 我使用了這些功能,但不確定我是否做對了所有事情

(len(set1) - len(set2))/len(set1)*100
(len(set1) - len(set3))/len(set1)*100
(len(set2) - len(set3))/len(set2)*100

這個記錄對嗎?

您可能想要這樣:

percentage = ( len(set1.intersection(set2)) / len(set1.union(set2)) )*100

它為您提供set1set2中公共元素的百分比。

這也稱為Jaccard Index ,這是一組相似度的度量。

從純粹的數學角度來看:我假設您要查找分別在set1和set2,set1和set3與set2和set3之間匹配的城市的百分比。

要計算此百分比,您需要找到匹配數和所比較的城市集的長度。

然后可以按如下方式計算百分比:

匹配百分比1和2 = [(1和2之間的匹配數)/(集合的長度)] * 100

對於代碼方面:我同意Sparkofska。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM