今天也是要講解Pandas以多個條件判斷資料,
而今天要使用的語法是isin,
那麼直接來看範例吧。
首先,先建立一個DataFrame
結構的資料,
或是有匯入的資料轉成DataFrame結構也行。
這邊為了方便對照,先印出完整的資料來看。
data = {
'MemberId': ['001', '002', '003', '004', '005', '006', '007', '008', '009', '010'],
'Name': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'],
'Height': [175, 153, 164, 168, 158, 189, 171, 166, 176, 170],
'Weight': [80, 45, 75, 52, 68, 78, 87, 85, 67, 60],
'City': ['New York', 'Los Angeles', 'Chicago', 'Washington', 'New York', 'Washington', 'Utah','Washington', 'Chicago', 'New York']
}
df = pd.DataFrame(data)
print(df)
印出資料如下
MemberId Name Height Weight City
0 001 A 175 80 New York
1 002 B 153 45 Los Angeles
2 003 C 164 75 Chicago
3 004 D 168 52 Washington
4 005 E 158 68 New York
5 006 F 189 78 Washington
6 007 G 171 87 Utah
7 008 H 166 85 Washington
8 009 I 176 67 Chicago
9 010 J 170 60 New York
這裡想要取得City欄位是New York和Chicago的資料。
先建立一個要選取資料的資料list作暫存,
程式碼如下。
cityList = ['New York','Chicago']
接著要取得對應資料欄位裡面含有list項目的資料,
先取得要判斷的欄位,後面用isin語法帶入資料,
語法如下df[欄位名稱].isin(欲包含項目的List)
最後印出回傳結果。
print(df['City'].isin(cityList))
印出資料如下,
資料結構為Series
。
0 True
1 False
2 True
3 False
4 True
5 False
6 False
7 False
8 True
9 True
Name: City, dtype: bool
這幾天講了幾個可以判多個條件的方式,
當然除了這些還有不少方法是可以判斷的,
大家可以選擇自己資料適合的方式來做判斷,
來得到想要的資料。