早上好!TypeError:strptime()參數1必須是字符串,而不是浮點數
我有一系列事件與關聯的日期。事件日期作爲一系列字符串值存儲在我加載到Python的數據框中的列中。數據框包含具有值的其他列。我想將列「事件」中的值轉換爲日期時間對象,將它們存儲在列表中,然後使用matplotlib繪製該列表以創建時間序列。
我的數據框看起來是這樣的:
date value_1 event other_event
37 07/02/2015 265.09 07/02/2015 NaN
38 08/02/2015 278.59 08/02/2015 NaN
156 06/06/2015 146.07 06/06/2015 NaN
180 30/06/2015 133.56 30/06/2015 NaN
243 01/09/2015 280.27 01/09/2015 01/09/2015
的Python告訴我,列數據爲Name: event, dtype: object
,我假設意味着它包含字符串值。我的代碼中也有df.event.apply(str)
,我認爲它會將我的事件列中的值轉換爲字符串值。
然後,我有這樣的代碼:
FMT = '%d/%m/%Y'
event_list = []
for i in range(0, len(event)):
event_list.append(datetime.datetime.strptime(event[i], FMT))
不過,此行會返回一個錯誤:
Traceback (most recent call last):
File "<ipython-input-39-e778a465e858>", line 2, in <module>
event_list.append(datetime.datetime.strptime(event[i], FMT))
TypeError: strptime() argument 1 must be string, not float
任何意見,因爲我要去哪裏錯將受到歡迎。
請問你的變量'event'是什麼樣子? – randomir
你能否進一步解釋 - 你的意思是對象類型?它的一些值包含在我發佈在OP中的數據框中。 –
你得到了什麼'len(event)'和'event [0]'? – randomir