【发布时间】:2019-11-21 16:15:53
【问题描述】:
我有数据框 A 和数据框 B,我想将 B 加入 A,但只针对 B 上的某个列。像这样:
dataA = ['a', 'c', 'd', 'e']
A = pd.DataFrame(dataA, columns=['testA'])
dataB = [['a', 1, 'asdf'],
['b', 2, 'asdf'],
['c', 3, 'asdf'],
['d', 4, 'asdf'],
['e', 5, 'asdf']]
B = pd.DataFrame(data1, columns=['testB', 'num', 'asdf'])
Out[1]: A
testA
0 a
1 c
2 d
3 e
Out[2]: B
testB num asdf
0 a 1 asdf
1 b 2 asdf
2 c 3 asdf
3 d 4 asdf
4 e 5 asdf
我当前的代码是:
Out[3]: A.join(B.set_index('testB'), on='testA')
testA num asdf
0 a 1 asdf
1 c 3 asdf
2 d 4 asdf
3 e 5 asdf
我想要的输出只是加入下面的“num”列并忽略“asdf”列,或者如果有更多列,则忽略所有其他列:
Out[4]: A
testA num
0 a 1
1 c 3
2 d 4
3 e 5
【问题讨论】:
标签: python pandas dataframe join