|
本帖最后由 songdg 于 2018-2-6 10:34 编辑
最近看NumPy学习指南,其中有一个例子怎么也不能通过。
def datestr2num(s):
return datetime.datetime.strptime(s, "%d-%m-%Y").date().weekday()
dates, close=np.loadtxt('data.csv', delimiter=',', usecols=(2,7),converters={2: datestr2num}, unpack=True)
print "Dates =", dates
结果是:Dates = [ 4. 0. 1. 2. 3. 4. 0. 1. 2. 3. 4. 0. 1. 2.3. 4. 1. 2. 4. 0. 1. 2. 3. 4. 0. 1. 2. 3. 4.]
先是在datestr2num(s)中加了s = s.decode('ascii')解决strptime() argument 1 must be str, not bytes的问题。
def datestr2num(s):
s = s.decode('ascii')
return datetime.datetime.strptime(s, "%d-%m-%Y").date(). weekday()
现在的问题是:time data ' ' does not match format '%d-%m-%Y'
已经找到问题所在,usecols=(2,7),原来读取文件是从0列开始。
|
|