我无法将数组重新整形为三维数组。下面是示例数据集:
import pandas as pd
import numpy as np
df = {
"a": [0.06 , 0.07, 0.45, 0.98, 0.97 ],
"b": [12,45,65, 56, 34],
"c": [2,5,5, 5, 3],
"d": [23,55,25, 15, 34],
"e": [0.0005,0.55555,0.383825, 0.4747477415, 0.348344334],
"f": [0.0236 , 0.3407, 0.4545, 0.9658, 0.4597 ],
"g": [70 , 90, 123, 154, 99 ],
}
#load into df:
df = pd.DataFrame(df)
print(df)
df.shape
X = df[['a', 'b', 'c','d','e','f']].to_numpy()
y = df['g'].to_numpy()
X
这是我从其中一个stackoverflow posts中找到的可能的解决方案
# Reshaping the X data to be 3D
X = X.reshape(5, 7, -1)
但是我没有用,我知道矩阵有它的规则,但是,有没有可能把它转换成三维数组呢?如果你知道的话,能不能帮帮我?非常感谢!
我想得到类似于(5,7,3),以3结尾的数组.
1条答案
按热度按时间oalqel3c1#
我认为你必须做到:
X.形状为
(5, 6)
由于您已将
'g'
移出到y
其他变体包括:
我们如何得到它们,实际上这些数的乘积应该是形状的乘积,所以在这个例子中
(5,6)
的乘积是30
。现在,您需要一个末端为
3
的3D数组,因此我们需要前2维中的10。