数据导入的三种方法

1、定量研究

  • 定量研究最重要的是如何提出问题,而不是数据和统计方法 —— 谢宇
  • 定量研究是分析趋势,是找寻和社会相适应的一个概括视角,这才是定量研究 —— 刘德寰

2、数据导入

  • 训练机器学习模型时,用到的大量数据都是以CSV的格式来存储,或者能方便转化为CSV格式。
  • CSV文件:这种文件是用逗号分隔的文本文件。在数据导入之前通常要审查CSV文件包含的内容:
    • 文件头:通过文件头信息,设置读入数据字段的属性名称,如果文件中没有文件头信息,则需要自己手动设定读入文件的字段属性名称。
    • 文件中的注释:在CSV文件中注释行通过“#”开头。
    • 分隔符:CSV文件标准分隔符号是逗号,也可以使用Tab键或空格键作为自定义分隔符,当使用这两种分隔符时,文件读取是要指明分隔符的。
    • 引号:当有字段值中有空白时,这些值通常都会被引号引起来,默认使用双引号来标记这些字段。
  • 数据集获取:UCI机器学习仓库(官网地址)中有很多免费数据
  • 以下介绍三种将CSV数据导入到Python中的方法:
    • 通过标准Python库导入CSV文件
    • 通过NumPy导入CSV文件
    • 通过Pandas导入CSV文件
'''
1、通过Python提供的标准库CSV,处理SCSV文件:
    1.1、这个类库中reader()函数用来读CSV文件
    1.2、当CSV文件被读入后,利用这些数据生成一个NumPy数组,用来训练算法模型
'''
from csv import reader
import numpy as np
# 使用标准的Python类库导入CSV数据
file_name = 'pima_data.csv'
with open(file_name,'rt') as raw_data:
    readers = reader(raw_data,delimiter=',')
    x = list(readers)
    data = np.array(x).astype('float')
    print(data.shape)   #(768, 9)
# =======================================================
'''
2、通过NumPy导入数据
    2.1、通过NumPy的loadtxt()函数导入数据,该函数处理的数据没有文件头,且所有数据结构都一样
    2.2、代码相对于用Python的CSV库导入简洁了很多(因为不用将读出的数据再转化为数组)
'''
from numpy import loadtxt
# 使用NumPy导入CSV数据
file_name = 'pima_data.csv'
with open(file_name,'rt') as raw_data:
    data = loadtxt(raw_data,delimiter=',')  #在这里用loadtxt
    print(data.shape)   #(768, 9)
# =======================================================
'''
3、通过Pandas导入数据
    3.1、通过Pandas导入CSV文件要使用pandas.read_csv()函数,该函数返回值是DataFrame
    3.2、在机器学习的项目中,经常用Pandas来做数据清洗与数据准备工作,推荐使用该方法
'''
from pandas import read_csv
# 使用Pandas导入CSV数据
file_name = 'pima_data.csv'
names = ['preg','pias','pres','skin','test','mass','pedi','age','class']
data = read_csv(file_name,names=names)
print(data.shape)   #(768, 9)

你可能感兴趣的:(机器学习,python)