获取数据集
sklearn.datasets是一个类 获取数据集有两种方法
datasets.load_*
datasets.fetch_*
load用于获取小规模的数据集
fetch用于获取大型的数据集
当我们调用数据后,会返回一系列的数据
在fetch函数中,有一个subtest参数,train/test/all 分别为测试集,训练集,所有
鸢尾花数据集介绍
数据集返回的是一个叫Bunch类型的数据
Bunch是一个字典格式的数据
字典具有键值对
键有五个
data:特征数据数组
target:标签数组
DESCR:数据描述
feature_names:特证名
target_names:标签名
dict[“key”] = value
dict.key = value
from sklearn.datasets import load_iris
iris = load_iris()
print("鸢尾花数据集的返回值为",iris)
print("鸢尾花数据集的特征值为",iris.data)
print("鸢尾花数据集的目标值为",iris.target)
print("鸢尾花特征名字",iris.feature_names)
print("鸢尾花目标名字",iris.target_names)
print("鸢尾花的描述",iris.DESCR)
pycharm 单行多行注释 window ctrl+/
一共有有四个特征值
对应的目标值有三个
拿到的数据不用全部的应用于训练模型
数据集的划分
训练数据:用于训练,构建模型
测试数据:在模型检验的时候使用,用于评估模型是否有效
数据集的划分API
sklearn.model_selection.train_test_split()
传入参数
x数据集的特征值
y数据集的目标值
test_size 测试集的大小
random_state 随机数种子不同的种子会造成不同的随机采样结果,项目的种子采样结果相同
返回值return
训练集特征值,测试集特征值,训练集目标值,测试集目标值
一般来说test_size = 0.25
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
iris = load_iris()
x_train ,x_test ,y_train , y_test = train_test_split(iris.data, iris.target, random_state=22)
print(x_train.shape)
原来是150个样本,经过划分之后变成112个训练集 ,38个测试集