Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python-ValueError:时间数据与格式不匹配_Python_Csv_Numpy_Date Conversion - Fatal编程技术网

python-ValueError:时间数据与格式不匹配

python-ValueError:时间数据与格式不匹配,python,csv,numpy,date-conversion,Python,Csv,Numpy,Date Conversion,我从下载了CSV文件TSLA.CSV。它有一个标题行和7列,第一列是date,其他列是float和int 我希望能够从中获得numpy阵列: import csv import numpy as np import matplotlib.pyplot as plt import matplotlib.dates as mdates import urllib def bytespdate2num(fmt, encoding="utf-8"): strconverter = mdate

我从下载了CSV文件TSLA.CSV。它有一个标题行和7列,第一列是date,其他列是float和int

我希望能够从中获得numpy阵列:

import csv
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import urllib


def bytespdate2num(fmt, encoding="utf-8"):
    strconverter = mdates.strpdate2num(fmt)
    def bytesconverter(b): 
        s = b.decode(encoding)
        return strconverter(s)
    return bytesconverter

with open("TSLA.CSV", "r") as csvfile:
    stock_price = csv.reader(csvfile, delimiter=" ")
    stock_price = list(stock_price)


date, closep, highp, lowp, openp, volume = np.loadtxt(stock_price, 
                                                      delimiter = ",",
                                                      unpack = True,
                                                      skiprows=1,
                                                      converters={0: bytespdate2num("%Y-%m-%d")})
问题是,我得到了以下错误:

ValueError:时间数据“['2010-06-29”与格式“%Y-%m-%d”不匹配


我已经仔细检查了格式,并检查了其他问题,但大部分都是关于错误的格式…我看不出这里有问题。感谢帮助。

好的,我相信问题在这里:

再看一次错误,它说,
“['2010-06-29”与数据格式不匹配
。 这是因为您不想单独解析日期,请查看围绕该日期的双引号

您正在尝试分析:

['2010-06-29

你的字符串中有一个额外的
['
,它把事情搞砸了。

好的,我相信问题出在这里:

再看一次错误,它说,
“['2010-06-29”与数据格式不匹配
。 这是因为您不想单独解析日期,请查看围绕该日期的双引号

您正在尝试分析:

['2010-06-29

还有一个额外的
['
在你的字符串中,这会把事情弄得一团糟。

这是完整的代码吗?我看不出你在代码中实际使用的格式字符串在哪里。你也可以添加它吗?@KshitijMittal,格式字符串在代码的最后一行,并传递给bytespdate2num函数。这是完整的代码吗?我看不出你实际使用的是哪里代码中的格式字符串。你也可以添加它吗?@KshitijMittal,格式字符串在代码的最后一行,并传递给bytespdate2num函数。别担心,这些事情会发生。起初,我的想法和你一样。我花了一段时间才意识到。别担心,这些事情会发生。起初,我的想法和你一样是的。我花了一段时间才意识到。