sklearn数据集(鸢尾花)的使用--代码实战
1. 鸢尾花数据集2. sklearn数据集返回值介绍load和fetch返回的数据类型datasets.base.Bunch(字典格式)data:特征数据数组,是 [n_samples * n_features] 的二维numpy.ndarray 数组target:标签数组,是 n_samples 的一维 numpy.ndarray 数DESCR:数据描述feature_names:特征名,新闻
·
1. 鸢尾花数据集
2. sklearn数据集返回值介绍
- load和fetch返回的数据类型datasets.base.Bunch(字典格式)
- data:特征数据数组,是 [n_samples * n_features] 的二维
- numpy.ndarray 数组
- target:标签数组,是 n_samples 的一维 numpy.ndarray 数
- DESCR:数据描述
- feature_names:特征名,新闻数据,手写数字、回归数据集没有
- -target_names:标签名
代码:
from sklearn.datasets import load_iris
# 获取鸢尾花数据集
iris = load_iris()
print(type(iris))
# print('鸢尾花数据集的返回值:\n', iris)
# print('鸢尾花数据集的特征值:\n', iris['data'])
print(iris['data'].shape)
print('鸢尾花数据集的目标值/标签值:\n', iris.target)
print('鸢尾花数据集特征的名字:\n', iris.feature_names)
print('鸢尾花数据集目标值的名字:\n', iris.target_names)
print('鸢尾花数据集的描述:\n', iris.DESCR)
部分结果:
3.划分数据集
3.1 数据集划分的API
- sklearn.model_selection.train_test_split(arrays, *options)
- x 数据集的特征值
- y 数据集的标签值
- test_size 测试集的大小,一般为float
- random_state 随机数种子,不同的种子会造成不同的随机采样结果。相同的种子采样结果相同。
- return 测试集特征训练集特征值值,训练标签,测试标签(默认随机取)
注意:当要做对比实验的时候,要将random_state设置为一个固定的值,这样才能到达控制变量的效果
完整代码:
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
def datasets_demo():
# 1.获取鸢尾花数据集
iris = load_iris()
# print(type(iris))
# print('鸢尾花数据集的返回值:\n', iris)
# print('鸢尾花数据集的特征值:\n', iris['data'])
# print(iris['data'].shape)
# print('鸢尾花数据集的目标值/标签值:\n', iris.target)
# print('鸢尾花数据集特征的名字:\n', iris.feature_names)
# print('鸢尾花数据集目标值的名字:\n', iris.target_names)
# print('鸢尾花数据集的描述:\n', iris.DESCR)
# 2. 对鸢尾花数据集进行划分
# 训练集的特征值x_train 测试集的特征值x_test 训练集的目标值y_train 测试集的目标值y_test
# test_size 默认为0.25
x_train, x_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.2, random_state=22)
print('x_train:\n', x_train.shape)
# 设置随机数种子
x_train1, x_test1, y_train1, y_test1 = train_test_split(iris.data, iris.target, test_size=0.2, random_state=6)
x_train2, x_test2, y_train2, y_test2 = train_test_split(iris.data, iris.target, test_size=0.2, random_state=6)
print('随机数种子不一致:\n', x_train == x_train1)
print('随机数种子一致:\n', x_train2 == x_train1)
return None
if __name__ == '__main__':
datasets_demo()
参考:b站sklearn菜菜的课程。
更多推荐
已为社区贡献18条内容
所有评论(0)