がt
は寸法(30,5)
(または実際には、(1,30,5)
)及びx
の2-D numpyのアレイはまた、形状(1000, 5)
のnumpyのアレイであると言うことができますnumpyの。私はxの2次元データを3次元データに変換しようとしています。新しい配列の各行列は、x
の1000行のうち30行(連続)です。あなたはt
とx[:30]
、またはスタッキング2-Dアレイは
t = np.vstack((t, x[:30]))
のタプルにnp.vstack
を使用すると、私の出力の形状が(60,5)
ですが、私はそれが(2, 30, 5)
になりたいです。これはどうすればいいですか?
UPDATE:私は実装し、DKVによって提案を試してみました:
t = np.random.rand(1,30,5)
for i, n in zip(x_data, np.arange(len(x_data))):
l = len(x_data) - 29
if n < l:
t = np.vstack((t,x_data[n:n+30].reshape(1,30,5)))
t = np.delete(t, 0)
print(t[:2], t.shape)
>>> [ 0.38009933 0.82223491]
>>> (1691249,)
今では一次元です。何かご意見は?
't.reshape(2,30,5)'? – Psidom
(30,5)と(1,30,5)は異なる形状です。 (30,5)は30行5列の行列です。 (1,30,5)は30x5水平面のように見えます – dkv
あなたはnp.delete()を間違って使っています。その行の前にt.shapeを印刷して、正しい形であることを確認してください。 – dkv