关于python 2.7:将熊猫系列转换为numpy数组

Convert panda series into numpy array

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

我是熊猫和Python的新手。我输入的数据就像

1
2
3
4
5
6
7
category   text
1   hello iam fine. how are you
1   iam good. how are you doing.

inputData= pd.read_csv(Input', sep='\t', names=['category','text'])
X = inputData["text"]
Y = inputData["category"]

这里是panda系列对象,我想把它转换成numpy数组。所以我尝试了,作为矩阵

1
2
YArray= Y.as_matrix(columns=None)
print YArray

但是我得到的输出是[1,1](这是错误的,因为我只有一个列类别和两行)。我想要2x1矩阵的结果。


要获得numpy数组,您需要

1
Y.values


试试这个:在序列对象上应用.as_矩阵后

1
Y.reshape((2,1))

因为.as_matrix()只返回numpy数组,而不是numpy矩阵。链接在这里


如果df是您的数据帧,那么数据帧的一列就是一个序列,要将它转换成一个数组,

1
2
3
df = pd.DataFrame()
x = df.values
print(x.type)

以下印刷品,

1
<class 'numpy.ndarray'>

已成功将其转换为数组。