Python 如何将数据帧转换为三维数据阵列

Python 如何将数据帧转换为三维数据阵列,python,arrays,pandas,numpy,dataframe,Python,Arrays,Pandas,Numpy,Dataframe,我想将数据帧转换为3D np.array 我试过df=df.as_矩阵。但它是一个二维矩阵。 数据帧为df: days 0 1 2 3 4 5 6 7 8 9 ... 20 21 \ enrollment_id event ... 1 access 0 0

我想将数据帧转换为3D np.array 我试过df=df.as_矩阵。但它是一个二维矩阵。 数据帧为df:

days                      0   1   2   3   4   5   6   7   8   9  ...  20  21  \
enrollment_id event                                              ...           
1             access       0   0   3   0   0   0   0   8   0   4 ...  20   0   
              discussion   0   0   0   0   0   0   0   0   0   0 ...   0   0   
              navigate     0   0   1   0   0   0   0   4   0   1 ...   0   0   
              page_close   0   0   1   0   0   0   0   6   0   2 ...  17   0   
              problem      0   0   8   0   0   0   0   6   0   0 ...   0   0   
              video        0   0   0   0   0   0   0   0   0   0 ...  14   0   
              wiki         0   0   0   0   0   0   0   0   0   0 ...   0   0   
3             access       7   0   0   0   2   0   0  11   0   0 ...   0   0   
              discussion   0   0   0   0   0   0   0   0   0   0 ...   0   0   
              navigate     4   0   0   0   1   0   0   1   0   0 ...   0   0   
              page_close   2   0   0   0   0   0   0   5   0   0 ...   0   0   
              problem     14   0   0   0   0   0   0  13   0   0 ...   0   0   
              video        1   0   0   0   0   0   0   0   0   0 ...   0   0   
              wiki         0   0   0   0   0   0   0   0   0   0 ...   0   0 

由于数组只是数据帧的裸值,只需执行以下操作

arr = df.values

如果形状不是您想要的,您可以使用NumPy重塑方法/函数。

df.values还返回一个2D数组。你的意思是使用NumPy REFORMATE函数将数据帧转换为3D ndarray?不,类似于arr=df.values.REFORMATEA、b、c,其中a、b和c是整数尺寸。尝试显示toy examle:源数据和应发生的情况。喜欢