2 回答

TA貢獻2080條經(jīng)驗 獲得超4個贊
看起來col1和col2您的“合并”數(shù)據(jù)框只是取自df1. 在這種情況下,您可以簡單地比較原始數(shù)據(jù)幀之間的 , 并將它們添加為列col1:col2
cols = ["col1", "col2"]
val_cols = ["col1_validation", "col2_validation"]
# (optional) new dataframe, so you don't mutate df1
df = df1.copy()
new_cols = (df1[cols] == df2[cols])
df[val_cols] = new_cols

TA貢獻1818條經(jīng)驗 獲得超3個贊
您可以使用類似于以下內(nèi)容的方式合并和比較兩個數(shù)據(jù)框:
df1 = pd.DataFrame({'index': [1,2,3,4],
'col1': ['a','b','c','d'],
'col2': ['h','e','l','p']})
df2 = pd.DataFrame({'index': [1,2,3,4],
'col1': ['a','e','f','d'],
'col2': ['h','e','lp','p']})
# give columns unique name when merging
df1.columns = df1.columns + '_df1'
df2.columns = df2.columns + '_df2'
# merge/combine data frames
combined = pd.concat([df1, df2], axis = 1)
# add calculated columns
combined['col1_validation'] = combined['col1_df1'] == combined['col1_df2']
combined['col12validation'] = combined['col2_df1'] == combined['col2_df2']
添加回答
舉報