【发布时间】:2019-02-21 11:13:23
【问题描述】:
我使用 pandas 和 numpy 从 csv 创建了数组。 这是我将 2D csv 转换为 3D 数组的代码:
>>> import pandas as pd
>>> import numpy as npp
>>> df = pd.read_csv("test.csv")
>>> df_mat = df.values
>>> seq_len = 3
>>> data=[]
>>> for index in range(len(df_mat) - seq_len):
... data.append(df_mat[index: index + seq_len])
...
>>> data = np.array(data)
>>> data.shape
(4, 3, 9)
使用的csv是:
input1,input2,input3,input4,input5,input6,input7,input8,output
1,2,3,4,5,6,7,8,1
2,3,4,5,6,7,8,9,0
3,4,5,6,7,8,9,10,-1
4,5,6,7,8,9,10,11,-1
5,6,7,8,9,10,11,12,1
6,7,8,9,10,11,12,13,0
7,8,9,10,11,12,13,14,1
现在我想将 3D 数组恢复为 2D 数组格式。
请让我知道我该怎么做。没有得到任何线索。
【问题讨论】:
-
认为应该是 -
for index in range(len(df_mat) - seq_len + 1):来覆盖所有子数组? -
行列时同上。 (7, 9)
标签: python arrays python-3.x pandas numpy