【问题标题】:Merging data frames while excluding empty records合并数据框同时排除空记录
【发布时间】:2016-11-07 17:47:30
【问题描述】:

我在匹配website的基础上合并两个data frames。但是这两个数据框中几乎没有没有网站的记录。这导致我的结果数据框中的匹配错误,因为它也匹配两个网站字段都为空的记录。如何设置与空字符串不匹配的条件?

df3 = pd.merge(df1,df2,left_on='website1',right_on='website2').sort_values('company_name')

【问题讨论】:

  • 在合并前过滤掉行?

标签: python string pandas dataframe conditional-statements


【解决方案1】:

合并前可以通过boolean indexing进行过滤:

df1 = df1[df1.website1 != '']
df2 = df2[df2.website2 != '']

示例:

df1 = pd.DataFrame({'website1':['','aa','bb'],
                   'a':[4,5,6]})

print (df1)
   a website1
0  4         
1  5       aa
2  6       bb

df1 = df1[df1.website1 != '']
print (df1)
   a website1
1  5       aa
2  6       bb

【讨论】:

    猜你喜欢
    • 2018-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多