我有一个单列数据。我想重塑它,以便我可以将其用于 RNN
I have a Single column data. I want to reshape it so i can use this into RNN
我试图重塑它,但出现错误。
在我必须重塑它之前,我必须使用 RNN。有什么想法吗?
X_train=np.reshape(Y,(Y.shape[0],Y.shape[1],1))
IndexError: tuple index out of range dataset
您的数据集很可能是一维的,而不是二维的。您的代码适用于 2D:
import numpy as np
Y = np.random.rand(3, 4)
print(Y)
Y = np.reshape(Y, (Y.shape[0], Y.shape[1], 1))
print(Y)
产量
[[0.94716449 0.46469876 0.74290887 0.11051443]
[0.31187829 0.26831897 0.37580931 0.23038081]
[0.46578756 0.81175453 0.98348175 0.02975313]]
[[[0.94716449]
[0.46469876]
[0.74290887]
[0.11051443]]
[[0.31187829]
[0.26831897]
[0.37580931]
[0.23038081]]
[[0.46578756]
[0.81175453]
[0.98348175]
[0.02975313]]]
可以直接在numpy.array
上调用reshape()
方法,即:
Y = np.random.rand(3, 4)
Y.reshape((Y.shape[0], Y.shape[1], 1))
输出:
array([[[0.03398233],
[0.31845358],
[0.26508794],
[0.4154345 ]],
[[0.80924495],
[0.86116906],
[0.24186532],
[0.64169452]],
[[0.61352962],
[0.95214732],
[0.26994666],
[0.99091755]]])
如果您的 Y
数组是一维的,您仍然可以像这样将其设为 3D:
Y.reshape((1, 1, -1))
输出:
array([[[0.52130672]],
[[0.25807463]],
[[0.81201524]],
[[0.08846268]],
[[0.20831986]],
[[0.823997 ]],
[[0.483052 ]],
[[0.15120415]],
[[0.19601734]],
[[0.55933897]],
[[0.9112403 ]],
[[0.1048653 ]]])
我试图重塑它,但出现错误。 在我必须重塑它之前,我必须使用 RNN。有什么想法吗?
X_train=np.reshape(Y,(Y.shape[0],Y.shape[1],1))
IndexError: tuple index out of range dataset
您的数据集很可能是一维的,而不是二维的。您的代码适用于 2D:
import numpy as np
Y = np.random.rand(3, 4)
print(Y)
Y = np.reshape(Y, (Y.shape[0], Y.shape[1], 1))
print(Y)
产量
[[0.94716449 0.46469876 0.74290887 0.11051443]
[0.31187829 0.26831897 0.37580931 0.23038081]
[0.46578756 0.81175453 0.98348175 0.02975313]]
[[[0.94716449]
[0.46469876]
[0.74290887]
[0.11051443]]
[[0.31187829]
[0.26831897]
[0.37580931]
[0.23038081]]
[[0.46578756]
[0.81175453]
[0.98348175]
[0.02975313]]]
可以直接在numpy.array
上调用reshape()
方法,即:
Y = np.random.rand(3, 4)
Y.reshape((Y.shape[0], Y.shape[1], 1))
输出:
array([[[0.03398233],
[0.31845358],
[0.26508794],
[0.4154345 ]],
[[0.80924495],
[0.86116906],
[0.24186532],
[0.64169452]],
[[0.61352962],
[0.95214732],
[0.26994666],
[0.99091755]]])
如果您的 Y
数组是一维的,您仍然可以像这样将其设为 3D:
Y.reshape((1, 1, -1))
输出:
array([[[0.52130672]],
[[0.25807463]],
[[0.81201524]],
[[0.08846268]],
[[0.20831986]],
[[0.823997 ]],
[[0.483052 ]],
[[0.15120415]],
[[0.19601734]],
[[0.55933897]],
[[0.9112403 ]],
[[0.1048653 ]]])