Pandas 联接后只保留一列
对于以下代码Pandas 联接后只保留一列,pandas,Pandas,对于以下代码 d = {'col1': [33,34], 'col2': [1,2]} d1 = {'col3': [33,34], 'col4': [3,4]} df = pd.DataFrame(data=d) df1 = pd.DataFrame(data=d1) myDF=pd.merge(df, df1, how='inner', left_on=['col1'], right_on=['col3']) 在myDF中,它保留了两列(col1和col3),是否有办法使用merg
d = {'col1': [33,34], 'col2': [1,2]}
d1 = {'col3': [33,34], 'col4': [3,4]}
df = pd.DataFrame(data=d)
df1 = pd.DataFrame(data=d1)
myDF=pd.merge(df, df1, how='inner', left_on=['col1'], right_on=['col3'])
在
myDF
中,它保留了两列(col1
和col3
),是否有办法使用merge
功能保留一列(col1
或col3
)?(当然,我可以在merge
之后通过应用drop
删除列,只是想看看是否可以简化步骤。)使用rename
列,因此输出仅为一列,也不必使用left_on
和right_on
参数,因为on
就足够了:
myDF=pd.merge(df.rename(columns={'col1':'col3'}), df1, on='col3')
print (myDF)
col3 col2 col4
0 33 1 3
1 34 2 4
使用
rename
列,因此输出仅为一列,也不必使用left\u on
和right\u on
参数,因为on
就足够了:
myDF=pd.merge(df.rename(columns={'col1':'col3'}), df1, on='col3')
print (myDF)
col3 col2 col4
0 33 1 3
1 34 2 4