如何比较两列(A和B),如果列B中不存在列A的值,请在Python中将该值添加到列B中



如果列A中的值不在列B中,我想比较A和B两列,并将列A的值添加到列B中。

我已经尝试了下面的代码块,但是当我尝试时遇到了一个错误。

for c1 in df['A']:
for c2 in df['B']:
if c1!=c2 : 
df['B'].append(c1)

我的数据库如下所示。

史蒂维
AB
BrianMeg
PeterStevie
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()

这应该能解决你的问题。

相关内容

最新更新