我試圖同化一堆信息爲可用的數組是這樣的:Python列表限制?
for (dirpath, dirnames, filenames) in walk('E:/Machin Lerning/Econ/full_set'):
ndata.extend(filenames)
for i in ndata:
currfile = open('E:/Machin Lerning/Econ/full_set/' + str(i),'r')
rawdata.append(currfile.read().splitlines())
currfile.close()
rawdata = numpy.array(rawdata)
for order,file in enumerate(rawdata[:10]):
for i in rawdata[order]:
r = i.split(',')
pdata.append(r)
fdata.append(pdata)
pdata = []
fdata = numpy.array(fdata)
plt.figure(1)
plt.plot(fdata[:,1,3])
編輯:使用前10個txt文件
for order,file in enumerate(rawdata[:10]):
我看到它時,打印ftada.shape後是(10,500,7)。但是,如果我不限制這大小,而是說
for order,file in enumerate(rawdata):
然後fdata.shape僅僅是(447) 好像發生這種情況時,我增加元素的數量我在期待通過rawdata數組到13以上...它不是任何具體的位置 - 我把它改爲
for order,file in enumerate(rawdata[11:24):
並且工作正常。 aaaaahhh 在情況下,它是非常有用的:這裏是什麼樣的文本文件的樣本是這樣的:
20080225,A,31.42,31.79,31.2,31.5,30575
20080225,AA,36.64,38.95,36.48,38.85,225008
20080225,AAPL,118.59,120.17,116.664,119.74,448847
這個錯誤通常意味着您正在嘗試將二維數組視爲三維數組。這與數組中元素的數量無關。我懷疑你的問題與你如何寫最後一行有關,而不是代碼中的其他內容。 – Ouroborus
您的代碼和異常不匹配(代碼中沒有'print'或'len')。它看起來並不像你執行你認爲的那樣的代碼。也許Anaconda存在緩存問題。 – Dunes