簡體   English   中英

如何檢查一列中的值是否等於另一列數據框中的值

[英]How to check if value from one column is equal to value in another columns data-frame

我有兩個單獨的數據框 df 和 xls。 Xls 是一個包含唯一 ID 的數據框,我想查看在我的 df 數據框(約 650,000 行)中出現了多少次,然后創建一個出現列來跟蹤我們的唯一 ID 從我們的xls dataframe 出現在 df dataframe 中。

xls = {'Unique ID': ['a', 'b', 'c', 'd', 'e'}
df = {'Contingency': ['a', 'b', 'c', 'd', 'a', 'b', 'c', 'e', 'd', 'b']} 
result_df = {'Contingency': ['a', 'b', 'a', 'b', 'a', 'b', 'a', 'b', 'd', 'b'],'Occurences': [4, 5, 0, 1, 0]  

最終,我只想跟蹤哪個唯一 ID 在 DF 中出現的次數最多,因為它的唯一 ID。

df.groupby('Contingency').count()應該生成您正在尋找的系列,而不需要包含唯一 ID 的 xls dataframe。

編輯:

如果您的“df”dataframe 只有“應急”列,則需要第二列將 count() 應用於,如下所示:

df = pd.DataFrame({'Contingency': ['a', 'b', 'c', 'd', 'a', 'b', 'c', 'e', 'd', 'b']})
df['Occurances'] = 1
result = df.groupby('Contingency').count()

否則你可以這樣做:

result = pd.DataFrame(df.Contingency.value_counts())

對於相同的結果。

然后您可以對值進行排序: result.sort_values(by = 'Contingency', ascending=False)

如果您想按唯一 ID 排序

  results_df = df['Contingency'].value_counts().sort_index()

如果要按發生頻率排序。

 results_df =  df['Contingency'].value_counts()

暫無
暫無

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

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