Python 中的股票预测脚本有问题
Having trouble with stock prediction script in Python
我最近发现了这个脚本,你可以找到 here,我已经试过了,但它说 [TICKER] has not been predicted.
所以,我深入研究了代码,发现了一些有用的代码我:
for i in stock_list:
print("Number: " + str(number))
try:
predictData(i, 5)
except:
print("Stock: " + i + " was not predicted")
number += 1
然后我评论出来,看看是什么导致它无法预测。这是我从中得到的:
Number: 0
AKS
Traceback (most recent call last):
File "finance.py", line 104, in <module>
getStocks(200)
File "finance.py", line 34, in getStocks
predictData(i, 5)
File "finance.py", line 86, in predictData
X, Y, test_size=0.5)
ValueError: too many values to unpack (expected 3)
啊哈!所以,作为 b*tch 的一小段代码是这样的:
X = np.array(df.drop(['prediction'], 1))
Y = np.array(df['prediction'])
X = preprocessing.scale(X)
X_prediction = X[-forecast_time:]
X_train, Y_train, Y_test = model_selection.train_test_split(
X, Y, test_size=0.5)
我认为这不起作用的原因是
X_train, Y_train, Y_test = model_selection.train_test_split(
X, Y, test_size=0.5)
给出了 4 个输出,但只有 3 个变量。我不知道我应该在这里做什么,因为我试图向它添加另一个变量,但是得到了这个:TypeError: only size-1 arrays can be converted to Python scalars
...
感叹
model_selection.train_test_split(...)
和cross_validation.train_test_split(...)
return偶数个数组(其实就是2*原来的数组数)。话虽如此,您正在输入一个 X 和 Y 数组,因此您应该期望输出包含 4 个数组。尝试将您的代码更改为 read
X_train, X_test, Y_train, Y_test = model_selection.train_test_split(X, Y, test_size = 0.5)
如果你说当你输入第 4 个变量时出错,我们可以看到回溯吗?我怀疑它不在同一条线上,但我现在无法 运行 代码,所以我不能自己做
我最近发现了这个脚本,你可以找到 here,我已经试过了,但它说 [TICKER] has not been predicted.
所以,我深入研究了代码,发现了一些有用的代码我:
for i in stock_list:
print("Number: " + str(number))
try:
predictData(i, 5)
except:
print("Stock: " + i + " was not predicted")
number += 1
然后我评论出来,看看是什么导致它无法预测。这是我从中得到的:
Number: 0
AKS
Traceback (most recent call last):
File "finance.py", line 104, in <module>
getStocks(200)
File "finance.py", line 34, in getStocks
predictData(i, 5)
File "finance.py", line 86, in predictData
X, Y, test_size=0.5)
ValueError: too many values to unpack (expected 3)
啊哈!所以,作为 b*tch 的一小段代码是这样的:
X = np.array(df.drop(['prediction'], 1))
Y = np.array(df['prediction'])
X = preprocessing.scale(X)
X_prediction = X[-forecast_time:]
X_train, Y_train, Y_test = model_selection.train_test_split(
X, Y, test_size=0.5)
我认为这不起作用的原因是
X_train, Y_train, Y_test = model_selection.train_test_split(
X, Y, test_size=0.5)
给出了 4 个输出,但只有 3 个变量。我不知道我应该在这里做什么,因为我试图向它添加另一个变量,但是得到了这个:TypeError: only size-1 arrays can be converted to Python scalars
...
感叹
model_selection.train_test_split(...)
和cross_validation.train_test_split(...)
return偶数个数组(其实就是2*原来的数组数)。话虽如此,您正在输入一个 X 和 Y 数组,因此您应该期望输出包含 4 个数组。尝试将您的代码更改为 read
X_train, X_test, Y_train, Y_test = model_selection.train_test_split(X, Y, test_size = 0.5)
如果你说当你输入第 4 个变量时出错,我们可以看到回溯吗?我怀疑它不在同一条线上,但我现在无法 运行 代码,所以我不能自己做