2016-07-05 23 views
2

我合併兩個data frames在匹配website的基礎上。但是在沒有網站的兩個數據框中都沒有記錄。這會導致我的結果數據框中的匹配錯誤,因爲它也匹配網站字段爲空的記錄。我怎樣才能把它與空串不匹配的條件?合併數據幀,同時排除空記錄

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

+0

篩選行了合併前? – Psidom

回答

0

您可以通過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