取得另一個DataFrame 中不存在的DataFrame 行
從一個DataFrame (df1) 取得不存在於另一個DataFrame (df2 ) 中的行),可以執行以下步驟:
import pandas as pd # Create the two DataFrames. df1 = pd.DataFrame(data={'col1': [1, 2, 3, 4, 5, 3], 'col2': [10, 11, 12, 13, 14, 10]}) df2 = pd.DataFrame(data={'col1': [1, 2, 3], 'col2': [10, 11, 12]}) # Perform a left join, ensuring each row in df1 joins with a single row in df2. df_all = df1.merge(df2.drop_duplicates(), on=['col1', 'col2'], how='left', indicator=True) # Create a boolean condition to identify rows in df1 that are not in df2. condition = df_all['_merge'] == 'left_only' # Filter df1 based on the condition. result = df1[condition]
這種方法確保僅提取df1 中 df2 中不存在的行,同時考慮每行中的兩個列值。獨立檢查各個列值的替代解決方案可能會導致不正確的結果。
以上是如何找出一個 Pandas DataFrame 中不存在於另一個 DataFrame 中的行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!