我實在是太懶了,問題描述抄的網上的哈哈哈:https://www.jianshu.com/p/6ab7afa059d1python
在作Python Data Science Handbook的實例學習,4.16.3 案例:探索馬拉松比賽成績裏,有提示將時分秒的時間化爲秒的總數,以方便畫圖。書裏給出的指令是:git
data['split_sec']=data['split'].astype(int)/1E9github
data['final_sec']=data['final'].astype(int)/1E9app
我用這種方式會出現如下錯誤:函數
TypeError: cannot astype a timedelta from [timedelta64[ns]] to [int32]學習
問題描述的鏈接裏面給出了一種解決辦法,但是這種解決辦法太複雜了,我想了一個更簡單的。.net
先寫一個將Timedelta格式的時間數據轉化爲總秒數的函數:code
def transfor_time(tt): return tt.total_seconds()
而後對咱們須要的列廣播這個函數:blog
data['split_sec'] = data['split'].apply(transfor_time) data['final_sec'] = data['final'].apply(transfor_time)
查看結果:ci
data.head()
OK!完美解決。。。
個人CSDN:https://blog.csdn.net/qq_21579045
個人博客園:https://www.cnblogs.com/lyjun/
個人Github:https://github.com/TinyHandsome
紙上得來終覺淺,絕知此事要躬行~
歡迎你們過來OB~
by 李英俊小朋友