Py学习  »  Python

python pandas:比较两列是否相等,并得出第三个数据帧的结果

ravi • 5 年前 • 3732 次点击  

如何将结果与不同数据帧中的两列进行比较后打印到单独的数据帧中。

考虑两个数据帧:

df1 = pd.DataFrame({'col1':['audi','cars']})  
df2 = pd.DataFrame({'col2':['audi','bike']})

print (df1)

    col1
0  audi
1  cars 

print (df2)

     col2
0   audi
1   bike

现在,结果应该在不同的数据帧中。

      col1  col2  result
0     audi  audi   no change
1     cars  bike   changed
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/39130
 
3732 次点击  
文章 [ 1 ]  |  最新文章 5 年前
jezrael
Reply   •   1 楼
jezrael    6 年前

使用 concat 具有 numpy.where :

df = pd.concat([df1, df2], axis=1)
df['result'] = np.where(df['col1'] == df['col2'], 'no change', 'changed')
print (df)
   col1  col2     result
0  audi  audi  no change
1  cars  bike    changed