1、Sklearn数据集获取
Sklearn.datasets
Load_* 获取小规模数据集
Fetch_*获取大规模数据集
例:小数据集:sklearn.datasets.load_iris() -----(加载并返回鸢尾花数据集)
sklearn.datasets.load_boston() ----(加载并返回波士顿房价数据集)
大数据集:sklearn.datasets.fetch_20newsgroups(data_home=None.subset='train')
-----(20个新闻组数据集)
数据集的返回值:
sklearn数据集返回值介绍:
1)datasets.base.Bunch(继承自字典)
dict["key"] = values
bunch.key = values
2)data:特征数据数组,是[n_samples *n_features]的二维numpy.ndarray数组
3)target:标签数组,是n_samples的一维numpy.ndarray数组
4)DESCR:数组描述
5)feature_names:特征名
6)target_names:标签名
2、鸢尾花数据集获取示例
from sklearn.datasets import load_iris
def datasets_demo():
"""
sklearn数据集使用
:return:
"""
#获取数据集
iris = load_iris()
print("鸢尾花数据集:\n",iris)
print("查看数据集描述:\n",iris["DESCR"])
print("查看特征值的名字:\n",iris.feature_names)
print("查看特征值:\n",iris.data,iris.data.shape)
print("鸢尾花目标值的名字:\n",iris.target_names)
3、数据集划分
数据集划分(获得的数据集按照一定比例进行划分)
训练数据:用于训练,构建模型
测试数据:在模型检验时使用,用于评估模型是否有效
比例: 训练集 70% 80% 75%
测试集 30% 20% 25% (20-30)
数据集划分API
sklearn.model_selection.train_test_split(arrays: options)
x数据集的特征值
y数据集的标签值
test_size 测试集的大小,一般为float
random_state 随机种子,不同的种子会造成不同随机采样结果,相同的种子采样结果相同
return 训练集特征值 ,测试集特征值 ,训练集目标值 ,测试集目标值
(x_train ,x_test , y_train ,y_test)
4、鸢尾花数据集划分示例
from sklearn.model_selection import train_test_split
# 数据集划分
x_tarin,x_test,y_train,y_test = train_test_split(iris.data,iris.target,test_size=0.2,random_state=22)
print("训练集的特征值:\n",x_tarin,x_tarin.shape)