如何将 pandas 数据帧列表转换为 3d numpy 数组?

New*_*ler 5 python numpy multidimensional-array python-3.x pandas

pd.DataFrame如果我有一个这样的列表:

df = pd.DataFrame(np.random.rand(4,5), columns = list('abcde'))
df_list = [df, df]
Run Code Online (Sandbox Code Playgroud)

问题: 如何将其转换为np.array( shape2, 3, 5) 的 3D?

我尝试这样做np.array(df_lsit),但出现以下错误:

ValueError: cannot copy sequence with size 4 to array axis with dimension 5
Run Code Online (Sandbox Code Playgroud)

Ali*_*leh 1

您应该将 DataFrame 转换为 numpy 数组,然后将其转换为 3D 数组。像这样:

np.array([np.array(df), np.array(df)])
Run Code Online (Sandbox Code Playgroud)