選取欄位

Python 的資料科學入門

Hillary Green-Lerman

Lead Data Scientist, Looker

為什麼要選欄位?

  • 用於計算

    credit_records.price.sum()
    
  • 繪製資料

    plt.plot(ransom['letter'], ransom['frequency'])
    
Python 的資料科學入門

欄位名稱是字串

print(credit_records.head())
            suspect         location              date         item  price
0    Kirstine Smith   Groceries R Us   January 6, 2018     broccoli   1.25
1      Gertrude Cox  Petroleum Plaza   January 6, 2018  fizzy drink   1.90
2  Fred Frequentist   Groceries R Us   January 6, 2018     broccoli   1.25
3      Gertrude Cox   Groceries R Us  January 12, 2018     broccoli   1.25
4    Kirstine Smith    Clothing Club   January 9, 2018        shirt  14.25
'suspect'
'location'
'date'
'item'
'price'
Python 的資料科學入門

用中括號與字串選取

suspect = credit_records['suspect']
print(suspect)
0            Kirstine Smith
1              Gertrude Cox
2          Fred Frequentist
3              Gertrude Cox
4            Kirstine Smith
5              Gertrude Cox
...
99             Gertrude Cox
100        Fred Frequentist
101            Gertrude Cox
102          Kirstine Smith
103    Ronald Aylmer Fisher
Python 的資料科學入門

用點記號選取

price = credit_records.price
print(price)
0       1.25
1       1.90
2       1.25
3       1.25
4      14.25
5       3.95
...
99     14.25
100    12.05
101    20.15
102     3.95
103     2.05
Python 的資料科學入門

選欄位的常見錯誤

欄位名含空白或特殊字元(-? 等)時,請用中括號與字串

police_report['Is Golden Retriever?']

NOT

police_report.Is Golden Retriever?
Object `Retriever` not found.
Python 的資料科學入門

選欄位的常見錯誤

用中括號與字串時,別忘了在欄位名外加引號!

credit_report['location']

NOT

credit_report[location]
Object `location` not found.
Python 的資料科學入門

選欄位的常見錯誤

用中括號,不是小括號

credit_report['location']

NOT

credit_report('location')
----------------------------------------------------------------------
TypeError  Traceback (most recent call last)
<ipython-input-5-aabdb8981438> in <module>()
----> 1 credit_report('location')

TypeError: 'DataFrame' object is not callable
Python 的資料科學入門

一起來練習吧!

Python 的資料科學入門

Preparing Video For Download...