您的位置:首页 > 编程语言 > Python开发

《机器学习Python实践》CH5 数据导入

2018-01-09 14:56 204 查看

第二部分:数据理解

CH5 数据导入

csv格式的文件是机器学习常用的数据文件,可以用txt或者Excel打开;在UCI机器学习仓库可以下载很多免费的数据集,作为自己练习的样本。

这里使用的是Pima Indians这个样本。主要记录了印第安人最近五年内是否患有糖尿病的医疗数据。输出结果都是0或1,使得在建立机器学习模型时非常的方便。

下面展示三种导入csv格式文件的方法。假设数据名为’pima_data.csv’

使用Python自带标准库csv来导入数据

from csv import reader
import numpy as np

filename = 'pima_data.csv'
with open(filename, 'rt') as raw_data:
readers = reader(raw_data, delimiter = ',')
x = list(readers)
data = np.array(x).astype('float')
print(data.shape)


解析:代码比较简单,就不详细解释了,不懂的直接百度或者查询Numpy的官方文档。这样导入的数据,是没有文件头的。

使用Numpy导入数据

from numpy import loadtxt
filename = 'pima_data.csv'
with open(filename, 'rt') as raw_data:
data = loadtxt(raw_data, delimiter = ',')
print(data.size)


解析:使用Numpy库的
loadtxt()
函数导入数据,可以生成一个Numpy数据,而且没有文件头。可以看到,这样的导入比用csv库导入要简单。

使用Pandas导入数据

from pandas import read_csv
filename = 'pima_data.csv'
names = ['preg', 'plas', 'pres', 'skin', 'test' , 'mass', 'pedi', 'age', 'class']
data = read_csv(filename, names = names)
print(data.shape)


解析:这里的names为csv文件加入了文件头,也就是第一行的标注。如果不定义
names = []
,一样可以运行,从而导出数据。

总结

由此可以看出,用Pandas导入数据是最简单的0-0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: