2015-11-21 52 views
-3
import csv 
import datetime as dt 
import datetime 

import matplotlib.pyplot as plt 


x,y = [],[] 
csv_reader = csv.reader(open('noneventEventdetect.csv')) 
for line in csv_reader: 
    x.append(line[1]) 
    T = dt.datetime.strptime(line[0],'%Y-%m-%d %H:%M:%S') 
    #print(T) 
    y.append(T) 
fig = plt.figure() 
ax = fig.add_subplot(111) 
ax.plot(y,x) 
fig.autofmt_xdate() 



plt.show() 

CSV數據示例(python3。 4):ValueError:時間數據'2013/05/24 07:00:00'與格式不符'%Y-%m-%d%H:%M:%S'

24/5/2013 7:00:00 1

24/5/2013 7:00:00 2

24/5/2013 7:00:00 3

24/5/2013 7:00:00 4

24/5/2013 7:00:00 5

24/5/2013 7:00:00 6

此錯誤:

Traceback (most recent call last):

File "C:\Users\Kitravee\Desktop\New folder (4)\sdf.py", line 12, in

T = dt.datetime.strptime(line[0],'%d-%m-%Y %H:%M:%S') 

File "C:\Python34\lib_strptime.py", line 500, in _strptime_datetime

tt, fraction = _strptime(data_string, format) 

File "C:\Python34\lib_strptime.py", line 337, in _strptime

(data_string, format)) 

ValueError: time data '2013/05/24 07:00:00' does not match format '%d-%m-%Y

%H:%M:%S'

+1

您好,歡迎StackOverflow上。請花一些時間閱讀幫助頁面,尤其是名爲[「我可以詢問什麼主題?」(http://stackoverflow.com/help/on-topic)和[「我應該問什麼類型的問題避免問?「](http://stackoverflow.com/help/dont-ask)。更重要的是,請閱讀[Stack Overflow問題清單](http://meta.stackexchange.com/q/156810/204922)。您可能還想了解[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve) – mnencia

+0

問題中的代碼,錯誤消息(您的實際代碼),csv數據,來自錯誤的輸入數據使用不同的格式:'%Y-%m-%d','%d-%m-%Y','%d /%m /%Y'和'%Y /%m/%d「(注意它是四種不同的格式)。 – jfs

+0

你可能會感興趣'python-dateutil'庫。它提供了'dateutil.parse'方法,可以自動發現大部分使用的日期格式。 – mnencia

回答

5

時間你的標題是一個比你所提供的文件不同的格式,兩者的不匹配的格式。

對於需要'%d/%m/%Y %H:%M'文件中的時間,在您的標題的時候,你需要'%Y/%m/%d %H:%M:%S'

+0

這是我的錯誤:ValueError:時間數據'2013/05/24 07:00:00'與格式不匹配'%d-%m-%Y%H:%M:%S' –

+2

錯誤中的格式是不是我在我的答案建議,所以請閱讀並嘗試它:) – Ishamael

+0

噢我非常感謝你這是我第一次問問題,如果我犯了一些錯誤我很抱歉 –

相關問題