簡體   English   中英

Pandas:檢查一個df中的值是否存在於另一個DF的任何列中

[英]Pandas: Check if value in one df exists in any column of another DF

我有 2 個 DF

DF1 & DF2

我在 DF1 中有一個列,我們稱之為 ID。 我想檢查此列中的 ID 是否在 DF2 的 2 列中(列名是 ID1 和 ID2)。

我已經嘗試過這種方法,但它只返回 nan 和 false 值。

DF2['Do_IDs_Exist']  = DF2[['ID1','ID2']].isin(DF1['ID'])
import pandas as pd

data1 = {"ID": [1, 2, 3]}
data2 = {"ID1": [1, 3, 5], "ID2": [2, 4, 6]}
DF1 = pd.DataFrame(data1)
DF1
    ID
0    1
1    2
2    3

DF2 = pd.DataFrame(data2)
DF2
    ID1 ID2
0     1   2
1     3   4
2     5   6

DF2['Do_IDs_Exist'] = (DF2['ID1'].isin(DF1['ID'])) | (DF2['ID2'].isin(DF1['ID']))
DF2
    ID1 ID2 Do_IDs_Exist
0     1   2         True
1     3   4         True
2     5   6        False

如果 ID 存在於其中一列中,這將返回 True。 替換| 如果 ID 應該存在於兩列中,則帶有&

暫無
暫無

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

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