如何将熊猫单列数据框转换为系列或numpy向量[重复]

Posted

技术标签:

【中文标题】如何将熊猫单列数据框转换为系列或numpy向量[重复]【英文标题】:How to convert pandas single column data frame to series or numpy vector [duplicate] 【发布时间】:2016-01-27 21:12:02 【问题描述】:

我有以下数据框只是单列。

import pandas as pd
tdf =  pd.DataFrame('s1' : [0,1,23.4,10,23])

目前它有以下形状。

In [54]: tdf.shape
Out[54]: (5, 1)

如何将其转换为 Series 或 numpy 向量,以便形状简单地为 (5,)

【问题讨论】:

【参考方案1】:

您可以简单地索引您想要的系列。示例 -

tdf['s1']

演示 -

In [24]: tdf =  pd.DataFrame('s1' : [0,1,23.4,10,23])

In [25]: tdf['s1']
Out[25]:
0     0.0
1     1.0
2    23.4
3    10.0
4    23.0
Name: s1, dtype: float64

In [26]: tdf['s1'].shape
Out[26]: (5,)

如果您希望系列中的值作为 numpy 数组,您可以使用 .values 访问器,示例 -

In [27]: tdf['s1'].values
Out[27]: array([  0. ,   1. ,  23.4,  10. ,  23. ])

【讨论】:

或者也许将系列分配给一个 numpy 数组以进行进一步操作,即。 np.asarray(tdf['s1']) 是的,但我认为tdf['s1'].values 会更干净。 这可能有以下错误***.com/questions/39474056/… 如果您希望避免引用列名,您也可以使用tdf.iloc[:,0] 获取最左侧的列,tdf.iloc[:,1] 获取下一列...

以上是关于如何将熊猫单列数据框转换为系列或numpy向量[重复]的主要内容,如果未能解决你的问题,请参考以下文章

熊猫数据框:将列转换为单列的行

将熊猫数据框转换为numpy数组[重复]

将熊猫数据框转换为矢量[重复]

将熊猫系列转换为numpy数组[重复]

numpy 矩阵到熊猫系列

将熊猫数据框转换为系列