运行我的代码时出错
dataset_total = pd.concat((dataset['Open'], dataset_test['Open']), axis = 0)
inputs = dataset_total[len(dataset_total) - len(dataset_test) - 60:].values
inputs = inputs.reshape(-1,1)
inputs = sc.transform(inputs)
X_test = []
for i in range(60, 80):
X_test.append(inputs[i-60:i, 0])
X_test = np.array(X_test)
X_test = np.reshape(X_test, (X_test.shape[0], X_test.shape[1], 1))
predicted_forex_price = regressor.predict(X_test)
predicted_forex_price = sc.inverse_transform(predicted_forex_price)
结果是:
/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:8: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray
--------------------------------------------------------------------------- IndexError Traceback (most recent call last) <ipython-input-110-0e4e370b525c> in <module>() 7 X_test.append(inputs[i-60:i, 0]) 8 X_test = np.array(X_test) ----> 9 X_test = np.reshape(X_test, (X_test.shape[0], X_test.shape[1], 1)) 10 predicted_forex_price = regressor.predict(X_test) 11 predicted_forex_price = sc.inverse_transform(predicted_forex_price) IndexError: tuple index out of range
您的切片长度不同,因此
X_test
不是二维数组,而是一维数组,其中每个条目都是形状不一致的数组为了方便起见,这里使用较小的阵列演示了此问题:
要解决这个问题,您需要确保
X_test
的原始构造包含所有长度相同的输入子集。例如:相关问题 更多 >
编程相关推荐