sklearn数据集简介

一:数据集划分

机器学习一般的数据集会划分为两个部分:

1、训练数据:用于训练,构建模型。(大家有时也会看到把训练数据划分为训练集和验证集,这往往发生在模型需要交叉验证时,目的是为了寻找更为合适的模型参数)

2、测试数据:在模型检验时使用,用于评估模型是否有效。

二:sklearn数据集API介绍

sklearn.datasets
加载获取常用数据集
datasets.load_*()
获取小规模数据集,数据包含在datasets里
可以在该文件夹下找到相关的数据文件,多是csv格式

datasets.fetch_*(data_home=None)
获取大规模数据集,需要从网络上下载
函数的第一个参数是data_home,表示数据集下载的目录
默认是 ~/scikit_learn_data/,可以自行指定下载路径

”’获取数据集返回的类型”’

load*和fetch*返回的数据类型datasets.base.Bunch(字典格式)

data:特征数据数组,是 [n_samples * n_features] 的二维numpy.ndarray 数组

target:标签数组(目标值那一列),是 n_samples 的一维 numpy.ndarray 数组

DESCR:该数据集相关信息的描述

feature_names:特征名(注意:新闻数据,手写数字、回归数据集没有该属性)

target_names:标签名,回归数据集没有

简单介绍几个数据集

1:加载并返回鸢尾花数据集
sklearn.datasets.load_iris()
2:加载并返回数字数据集
sklearn.datasets.load_digits()
sklearn回归数据集

3:加载并返回波士顿房价数据集
sklearn.datasets.load_boston()

图4:加载和返回糖尿病数据集
sklearn.datasets.load_diabetes()

三:sklearn数据集划分API介绍

sklearn.model_selection.train_test_split
数据集进行分割
sklearn.model_selection.train_test_split(x,y,test_size,random_state,**options)
x:数据集的特征值
y:数据集的标签值
test_size:测试集的大小,一般为float,多为0.25
random_state:随机数种子,不同的种子会造成不同的随机采样结果。相同的种子采样结果相同。一般在测试不同算法的优良性时固定数据集
return:训练集特征值,测试集特征值,训练标签,测试标签(默认随机取)

用于分类的大数据集
sklearn.datasets.fetch_20newsgroups(data_home=None,subset=‘train’)

subset: ‘train’或者’test’,’all’,可选,选择要加载的数据集.训练集的“训练”,测试集的“测试”,两者的“全部”
datasets.clear_data_home(data_home=None)
清除目录下的数据

基于knn算法的代码实现

1.新建一个date.py 和test.py文件

详细的数据集下载可以访问以下链接: http://dataju.cn/Dataju/web/datasetInstanceDetail/139 http://aws.amazon.com/datasets

1+

Leave a reply

Your email address will not be published.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

3 × 4 =