Pandas - 将一维数组列转换为二维数组
Pandas - Convert a column of 1D arrays to a 2D array
我有一个只有一列的数据框,其中每一行都是一个一维数组。
my_col
0 [1,2,3,4]
1 [5,6,7,9]
2 [8,5,4,3]
3 [3,6,8,0]
4 [2,4,6,8]
其中[1,2,3,4]、[5,6,7,9]等都是形状为(4,)的一维数组。我想将此列转换为一维数组的数组。即,形状数组 (5,4).
但是,如果我尝试 np.array(df['my_col'].values)
,我得到的形状是 (5,)。但是,我如何获得 (5,4)?
首先将值转换为列表,然后再转换为 np.array
:
np.array(df['my_col'].tolist())
您可以使用 np.stack
:
np.stack(df["my_col"].values)
我有一个只有一列的数据框,其中每一行都是一个一维数组。
my_col
0 [1,2,3,4]
1 [5,6,7,9]
2 [8,5,4,3]
3 [3,6,8,0]
4 [2,4,6,8]
其中[1,2,3,4]、[5,6,7,9]等都是形状为(4,)的一维数组。我想将此列转换为一维数组的数组。即,形状数组 (5,4).
但是,如果我尝试 np.array(df['my_col'].values)
,我得到的形状是 (5,)。但是,我如何获得 (5,4)?
首先将值转换为列表,然后再转换为 np.array
:
np.array(df['my_col'].tolist())
您可以使用 np.stack
:
np.stack(df["my_col"].values)