因違規被攔多久?

使用 pandas 分析警方執法活動

Kevin Markham

Founder, Data School

分析 object 欄位

apple
date_and_time         price    volume  change      
2018-01-08 16:00:00  174.35  20567800    down
...                     ...       ...     ...
2018-03-09 16:00:00  179.98  32185200      up
  • 建立布林欄位:價格上漲為 True,否則為 False
  • 透過該欄位的平均值計算上漲頻率
apple.change.dtype
dtype('O')
  • 此情況無法使用 .astype()
使用 pandas 分析警方執法活動

將一組值對應到另一組值

  • 字典將現有值對應到目標值
mapping = {'up':True, 'down':False}

apple['is_up'] = apple.change.map(mapping)
apple
date_and_time         price    volume change  is_up
2018-01-08 16:00:00  174.35  20567800   down  False
...                     ...       ...    ...    ...
2018-03-09 16:00:00  179.98  32185200     up   True
apple.is_up.mean()
0.5
使用 pandas 分析警方執法活動

計算搜查率

  • 視覺化各違規類型後進行搜查的比率
ri.groupby('violation').search_conducted.mean()
violation
Equipment              0.064280
Moving violation       0.057014
Other                  0.045362
Registration/plates    0.093438
Seat belt              0.031513
Speeding               0.021560
search_rate = ri.groupby('violation').search_conducted.mean()
使用 pandas 分析警方執法活動

繪製長條圖

search_rate.plot(kind='bar')
plt.show()

各違規類型的搜查率長條圖

使用 pandas 分析警方執法活動

排序長條(1)

  • 依大小由左到右排序長條
search_rate.sort_values()
violation
Speeding               0.021560
Seat belt              0.031513
Other                  0.045362
Moving violation       0.057014
Equipment              0.064280
Registration/plates    0.093438
Name: search_conducted, dtype: float64
使用 pandas 分析警方執法活動

排序長條(2)

search_rate.sort_values().plot(kind='bar')
plt.show()

各違規類型的搜查率(已排序)長條圖

使用 pandas 分析警方執法活動

旋轉長條

search_rate.sort_values().plot(kind='barh')
plt.show()

各違規類型的搜查率水平長條圖

使用 pandas 分析警方執法活動

一起來練習吧!

使用 pandas 分析警方執法活動

Preparing Video For Download...