2017-10-09 17 views
1

我有數據幀2列Actor1Name & ActionGeo_FullName有的10K行,想如果有一列包含澳門或澳門過濾器使用多列的查詢條件,Python的3.6

下面是我的腳本來篩選記錄,這是正確的?請讓我知道簡單的腳本。

dataMAC = dataAll.loc[dataAll['Actor1Name'].str.contains('macao|macau') == True | dataAll['ActionGeo_FullName'].str.contains('macao|macau') == True] 

Actor1Name ActionGeo_FullName 
macao macau 
US USA 
China China 
UK United Kindom 
China MC macau 

回答

2

我想是的,有點要通過移除==Trueloc加以改進:

dataMAC = dataAll[dataAll['Actor1Name'].str.contains('macao|macau') | 
        dataAll['ActionGeo_FullName'].str.contains('macao|macau')] 
print (dataMAC) 
    Actor1Name ActionGeo_FullName 
0  macao    macau 
4  China   MC macau 
+0

非常感謝...它的工作... –

1

的真實是默認激活,所以你並不需要它。 也許.loc函數不能接受這些類型的操作。

+0

感謝您的信息 –

+1

這不是一個真正的答案。你能提供一個有效的代碼片段嗎? – Risadinha

+0

添加到@Risadinha,如果你沒有提供代碼,你會說基本上與已經接受的答案一樣(=='True'和'.loc'都被刪除了。謝謝! – lrnzcig