关于python:如何将pandas单列数据框转换为系列或numpy向量

How to convert pandas single column data frame to series or numpy vector

本问题已经有最佳答案,请猛点这里访问。

我有以下数据框,只有一列。

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

当前它具有以下形状。

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

如何将其转换为序列或numpy向量,使形状简单为(5,)


您可以简单地索引所需的序列。示例-

1
tdf['s1']

演示-

1
2
3
4
5
6
7
8
9
10
11
12
13
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访问器,例如-

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