私はグーグルを検索してきましたが、何が間違っているのかわかりません。私はPythonを初めて使用し、株式でscikitを使用しようとしていますが、予測しようとすると「ValueError:行列が整列していません」というエラーが発生します。
import datetime
import numpy as np
import pylab as pl
from matplotlib import finance
from matplotlib.collections import LineCollection
from sklearn import cluster, covariance, manifold, linear_model
from sklearn import datasets, linear_model
###############################################################################
# Retrieve the data from Internet
# Choose a time period reasonnably calm (not too long ago so that we get
# high-tech firms, and before the 2008 crash)
d1 = datetime.datetime(2003, 01, 01)
d2 = datetime.datetime(2008, 01, 01)
# kraft symbol has now changed from KFT to MDLZ in yahoo
symbol_dict = {
'AMZN': 'Amazon'}
symbols, names = np.array(symbol_dict.items()).T
quotes = [finance.quotes_historical_yahoo(symbol, d1, d2, asobject=True)
for symbol in symbols]
open = np.array([q.open for q in quotes]).astype(np.float)
close = np.array([q.close for q in quotes]).astype(np.float)
# The daily variations of the quotes are what carry most information
variation = close - open
#########
pl.plot(range(0, len(close[0])-20), close[0][:-20], color='black')
model = linear_model.LinearRegression(normalize=True)
model.fit([close[0][:-1]], [close[0][1:]])
print(close[0][-20:])
model.predict(close[0][-20:])
#pl.plot(range(0, 20), model.predict(close[0][-20:]), color='red')
pl.show()
エラー行は
model.predict(close[0][-20:])
リストに入れ子にしてみました。numpyで配列にします。グーグルで見つけたものは何でもありますが、ここで何をしているのかわかりません。
このエラーは何を意味し、なぜ発生するのですか?