Python:如何合并两列而不覆盖?

时间:2018-10-10 13:47:52

标签: python python-3.x

我正在尝试在python中合并2列: A列和B列均包含状态名称。我很想合并An栏和B栏,以获得“理想结果”栏。我如何在python中实现它?非常感谢! 这是用Python编写的;它们是数据帧。

enter image description here

3 个答案:

答案 0 :(得分:1)

如果这是一个数据框,我认为您可以尝试使用np.where

df['idealcol'] = np.where(df['A'].isnull(), df['B'] , df['A'])

答案 1 :(得分:0)

考虑到这在数据框df中有些出色:

df['Ideal Result'] = df.A.str.cat(df.B)   

如果不是:

import pandas as pd
df = pd.read_csv("\\your_csv.csv")

答案 2 :(得分:0)

使用np.where检查A列中的字符串是否为空或空

import pandas as pd
import numpy as np
df=pd.DataFrame({'A':['AL',''],'B':['','BL']})
df['ideal_col']=np.where((df['A']=='') |( df['A'].isnull()), np.where(df['B'].isnull(),'',df['B']) , df['A'])