7

我看到使用 sklearn 我们可以使用一些预定义的数据集,例如mydataset = datasets.load_digits()我们可以获得数据集的数组(一个 numpy 数组?)mydataset.data和相应标签的数组mydataset.target。但是我想加载我自己的数据集以便能够将它与 sklearn 一起使用。我应该如何以及以哪种格式加载我的数据?我的文件具有以下格式(每一行都是一个数据点):

-0.2080,0.3480,0.3280,0.5040,0.9320,1.0000,label1
-0.2864,0.1992,0.2822,0.4398,0.7012,0.7800,label3
...
...
-0.2348,0.3826,0.6142,0.7492,0.0546,-0.4020,label2
-0.1856,0.3592,0.7126,0.7366,0.3414,0.1018,label1
4

1 回答 1

14

您可以使用 numpy 的 genfromtxt 函数从文件中检索数据(http://docs.scipy.org/doc/numpy/reference/generated/numpy.genfromtxt.html

import numpy as np
mydata = np.genfromtxt(filename, delimiter=",")

但是,如果您有文本列,则使用 genfromtxt 会比较棘手,因为您需要指定数据类型。

使用优秀的 Pandas 库( http://pandas.pydata.org/)会容易得多

import pandas as pd
mydata = pd.read_csv(filename)
target = mydata["Label"]  #provided your csv has header row, and the label column is named "Label"

#select all but the last column as data
data = mydata.ix[:,:-1]
于 2013-02-27T10:31:17.700 回答