将 array.tolist() 添加到 pandas 数据帧中的列后,获取每个单元格中存储一个元素的列表
Getting list with one element stored at each cell after adding array.tolist() to a column in pandas dataframe
我将 np.ndarray 元素作为列添加到 pandas 数据框中。
原数组-->
nparray = [[0.8986785 , 0.70790794, 0.67611285]]
所以我使用了以下语法:
df_test['column1'] = nparray.tolist()
我期待生成的数据框看起来像这样:
| | column1 |
| --| --------- |
| 0 | 0.8986785 |
| 1 | 0.70790794|
| 2 | 0.67611285|
但是我得到了数据框的每个元素作为一个列表,如下所示:
| | column1 |
| --| ----------- |
| 0 | [0.8986785] |
| 1 | [0.70790794]|
| 2 | [0.67611285]|
如何修改代码以获得预期的输出?
请帮忙。
试试 flatten()
:
df_test['column1'] = nparray.flatten()
或
与 ravel()
:
df_test['column1'] = nparray.ravel()
因为你有一个二维数组,所以通过 flatten()
/ravel()
将其设为一维,然后赋值
我将 np.ndarray 元素作为列添加到 pandas 数据框中。
原数组-->
nparray = [[0.8986785 , 0.70790794, 0.67611285]]
所以我使用了以下语法:
df_test['column1'] = nparray.tolist()
我期待生成的数据框看起来像这样:
| | column1 |
| --| --------- |
| 0 | 0.8986785 |
| 1 | 0.70790794|
| 2 | 0.67611285|
但是我得到了数据框的每个元素作为一个列表,如下所示:
| | column1 |
| --| ----------- |
| 0 | [0.8986785] |
| 1 | [0.70790794]|
| 2 | [0.67611285]|
如何修改代码以获得预期的输出? 请帮忙。
试试 flatten()
:
df_test['column1'] = nparray.flatten()
或
与 ravel()
:
df_test['column1'] = nparray.ravel()
因为你有一个二维数组,所以通过 flatten()
/ravel()
将其设为一维,然后赋值