我是pandas和python的新手。我的输入数据就像
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"]
这里Y是熊猫系列对象,我想将其转换为numpy数组。所以我试过.as_matrix
YArray= Y.as_matrix(columns=None)
print YArray
但我得到的输出为[1,1](这是错误的,因为我只有一个列类别和两行)。我希望结果为2x1矩阵。
答案 0 :(得分:34)
要获得numpy数组,您需要
Y.values
答案 1 :(得分:9)
试试这个:
在系列对象上应用.as_matrix之后
Y.reshape((2,1))
因为.as_matrix()只返回一个numpy-array而不是numpy-matrix。 Link here
答案 2 :(得分:3)
如果df是您的数据框,则该数据框的一列是一个序列并将其转换为数组,
df = pd.DataFrame()
x = df.values
print(x.type)
以下印刷品
<class 'numpy.ndarray'>
成功将其转换为数组。