gpt4 book ai didi

python - 提取 numpy 3D 数组

转载 作者:行者123 更新时间:2023-12-01 09:34:34 27 4
gpt4 key购买 nike

假设我有这个 pandas DataFrame:

>>> import pandas as pd, numpy as np
>>> df1 = pd.DataFrame([[np.nan, 2, np.nan, 0], [3, 4, np.nan, 1], [np.nan, np.nan, np.nan, 5]], columns=list('ABCD') )
>>> df = pd.concat([df1,df1], keys='EF', axis=1)
>>> df
E F
A B C D A B C D
0 NaN 2.0 NaN 0 NaN 2.0 NaN 0
1 3.0 4.0 NaN 1 3.0 4.0 NaN 1
2 NaN NaN NaN 5 NaN NaN NaN 5

如何将其转换为形状为 (3,2,4) 的 3D numpy 数组?

最佳答案

您可以 reshape values数据框:

import pandas as pd
import numpy as np

df1 = pd.DataFrame([[np.nan, 2, np.nan, 0],
[3, 4, np.nan, 1],
[np.nan, np.nan, np.nan, 5]],
columns=list('ABCD') )
df = pd.concat([df1, df1], keys='EF', axis=1)
# A view of the data, changing it changes df
df_three_dim = df.values.reshape((3, 2, 4))
# A new array, changing it does not change df
df_three_dim_copy = df.values.reshape((3, 2, 4)).copy()

关于python - 提取 numpy 3D 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49647697/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com