我想结合一维和二维numpy数组

问题描述 投票:0回答:1
|   Column_A   |           Column_B                   |             Column_C                 | 
| 0.91512748   | [1.22773944 1.34972084  ...   0. ]   | [1.22773944 1.34972084  ...   0. ]   |
| 1.09939718   | [0.36013158 1.0634674   ...   0. ]   | [1.22773944 1.34972084  ...   0. ]   |
| 1.10390337   | 0.70320446 0.82676872   ...   0. ]   | [1.22773944 1.34972084  ...   0. ]   |
|      ...     |             ...                      |                  ...                 |
|      ...     |             ...                      |                  ...                 |
|      ...     |             ...                      |                  ...                 |
|      ...     |             ...                      |                  ...                 |

我希望我的 numpy 数据以这种方式存储。实际上,Column_A、Column_B 和 Column_C 存储在不同的变量中。 Column_A 的维度为 (8741)。 Column_B 的维度为 (8741,60)。 Column_C 的尺寸为 (8741,60)。

我寻找了不同的解决方案,但他们建议更改我的数据的维度。

python numpy numpy-ndarray
1个回答
0
投票

您似乎想以表格格式表示多维数组(如 B 列和 C 列中的数组),其中每个单元格包含整个数组。 Pandas 能够在不改变数据维度的情况下做到这一点。

以下是实现此目标的方法:

首先,确保 numpy 数组中有数据。 使用这些数组创建一个 pandas DataFrame。 让我们用一个例子来演示这一点。

import numpy as np
import pandas as pd

# Sample data
np.random.seed(42)
column_A = np.random.rand(8741)
column_B = np.random.rand(8741, 60)
column_C = np.random.rand(8741, 60)

# Creating the dataframe
df = pd.DataFrame({
    'Column_A': column_A,
    'Column_B': [arr for arr in column_B],
    'Column_C': [arr for arr in column_C]
})

显示数据框的前 3 行

df.head(3) 结果

   Column_A                                           Column_B  \
0  0.374540  [0.41875899048265497, 0.4318436923120297, 0.05...   
1  0.950714  [0.2582643578871635, 0.4807861681797273, 0.992...   
2  0.731994  [0.8171021330026149, 0.8610088213080136, 0.615...   

                                            Column_C  
0  [0.07950520619523349, 0.23686847584676352, 0.6...  
1  [0.44720578449339654, 0.12669304374205492, 0.6...  
2  [0.10004896653359363, 0.010461613428716654, 0....  

这是显示前三行的数据框。 “Column_B”和“Column_C”中的每个单元格都包含一个完整的 60 个元素的数组。

您可以看到单元格中的数据出于显示目的而被截断,但请放心,每个单元格中都存储了完整的 60 个元素的数组。这正是您正在寻找的格式,其中保留了数据的维度。

© www.soinside.com 2019 - 2024. All rights reserved.