如果列A中的值不在列B中,我想比较A和B两列,并将列A的值添加到列B中。
我已经尝试了下面的代码块,但是当我尝试时遇到了一个错误。
for c1 in df['A']:
for c2 in df['B']:
if c1!=c2 :
df['B'].append(c1)
我的数据库如下所示。
A | B |
---|---|
Brian | Meg |
Peter | Stevie |
for c1 in df['A']:
if c1 not in df['B']:
df['B'].append(c1)
如果我能正确理解你的问题,应该会奏效。示例:
df = {
'A' : [1,2,3],
'B' : [1,2,4]
}
for c1 in df['A']:
if c1 not in df['B']:
df['B'].append(c1)
print(df)
打印:
{'A': [1, 2, 3], 'B': [1, 2, 4, 3]}
编辑:
我已经为DataFrames的解决方案编辑了它。
dfa = df['A']
dfb = df['B']
dfa = dfa.rename(columns={'A':'B'})
# use concat to merge it
new_df = pd.concat([dfa,dfb])
new_df = new_df.drop_duplicates()
这应该能解决你的问题。