[英]Removing rows from dataframe that occurs in another dataframe
我在從 dataframe 中刪除發生在另一個 dataframe 中的行時遇到問題。下面是簡單示例和預期結果。
df1
一種 | 乙 |
---|---|
Z | 1個 |
X | 2個 |
C | 3個 |
V | 4個 |
df2
一種 | 乙 |
---|---|
DD | 66 |
Z | 1個 |
X | 2個 |
CC | 55 |
應為 output,df2,但 df1 中出現的行將被刪除。
新的DF2:
一種 | 乙 |
---|---|
DD | 66 |
CC | 55 |
編輯:我需要同時匹配 A 和 B。
IIUC,您可以在indicator=True
的幫助下使用反向merge
:
(df2
.merge(df1, how='left', indicator=True) # if unrelated columns use on=['A', 'B']
.loc[lambda d: d.pop('_merge').eq('left_only')]
)
output:
A B
0 DD 66
3 CC 55
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.