iT邦幫忙

2024 iThome 鐵人賽

DAY 14
0

今天要來講講Pandas的條件判斷,
自訂條件來判斷資料的布林值,
最後回傳boolean array。

範例

首先,先建立一個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
單一判斷回傳boolean array

這邊先來簡單複習一下,
語法df['City']可以取得每筆資料的City欄位的值,
那麼現在用一個判斷式判斷City是否是Chicago,
語法就是df['City'] == 'Chicago'
最後印出回傳結果。

print(df['City'] == 'Chicago')

印出資料如下,
資料結構為Series

0    False
1    False
2     True
3    False
4    False
5    False
6    False
7    False
8     True
9    False
Name: City, dtype: bool

可以看出每筆資料依照指定條件回傳各別的布林值,
這邊判斷以等於作為範例,
若要用不等於!=、**大於>或是小於<**當然也是沒問題的。

今日結語

今天學會單一判斷資料以boolean array的方式得知各資料是否符合條件,
在這只有基本的判斷條件結果,
明天會延續今天的知識,
使用多個條件判斷式來判斷資料。


上一篇
DAY13 Pandas使用loc、iloc的:語法取得指定範圍列資料
下一篇
DAY15 Pandas以多重條件判斷資料part1
系列文
走在Pandas資料操縱與分析的路上持續前進30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言