字串相加與數字串接的陷阱
在上一個練習中,你已經確認 user_type 的正確資料型別是 category,並完成轉換,進而取得相關的統計摘要,幫助你了解 user_type 的分佈。
另一個常見的資料型別問題是:原本應該是數值的資料被匯入成字串。此時進行加總或乘法等數學運算,得到的會是字串串接,而不是數值結果。
在本練習中,你將把字串欄位 duration 轉成 int。但在此之前,你需要先把欄位中的 "minutes" 去除,才能讓 pandas 將其視為數值。pandas 套件已以 pd 匯入。
本練習屬於課程
用 Python 進行資料清理
練習說明
- 使用
.strip()方法從duration中去除"minutes",並將結果存到duration_trim欄位。 - 將
duration_trim轉為int,並存到duration_time欄位。 - 撰寫一個
assert陳述,檢查duration_time的資料型別是否為int。 - 印出平均的騎乘時間。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Strip duration of minutes
ride_sharing['duration_trim'] = ride_sharing['duration'].____.____()
# Convert duration to integer
ride_sharing['duration_time'] = ____
# Write an assert statement making sure of conversion
assert ride_sharing['____'].____ == '____'
# Print formed columns and calculate average ride duration
print(ride_sharing[['duration','duration_trim','duration_time']])
print(____)