[机器学习与scikit-learn-5]:数据集获取的主要方式-1-自带数据集

Posted 文火冰糖的硅基工坊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[机器学习与scikit-learn-5]:数据集获取的主要方式-1-自带数据集相关的知识,希望对你有一定的参考价值。

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/123219072


目录

第1章 scikit-learn数据获取的主要方式

第2章 scikit-learn自带数据集

2.1 概述

2.2 代码示例-1:datasets.load_iris()

2.3 代码示例-2:datasets.load_digits() #手写数字识别 

2.4 代码示例-3:datasets.load_digits() #手写数字识别 


第1章 scikit-learn数据获取的主要方式

自带的小数据集:安装后,这些数据集一并安装,xxx.load_xxx()

在线下载的数据集:下载远程数据集

计算机生成的数据集:通过某种数学算法,生成数据集

svmlight/svm格式的数据集: 从文件冲去数据集

mldata.org: 在线下载由mldata.org提供的大型数据集

第2章 scikit-learn自带数据集

2.1 概述

  • 鸢尾花数据集: load_iris() 可用于分类 和 聚类
  • 乳腺癌数据集: load_breast_cancer() 可用于分类
  • 手写数字数据集: load_digits() 可用于分类
  • 糖尿病数据集: load_diabetes() 可用于分类
  • 波士顿房价数据集: load_boston() 可用于回归
  • 体能训练数据集: load_linnerud() 可用于回归
  • 图像数据集: load_sample_image(name)

上述数据集三种类型

  • 聚类:无监督式学习、无标签分类
  • 分类:有监督式学习、有标签分类
  • 回归:有监督式学习、有标签、拟合

直接利用load_xxx就可以加载这些自带的数据集,这些数据集,没有多大的实际用处,主要用于学习。

2.2 代码示例-1:datasets.load_iris()

# 导入数据
import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
# 加载数据集
iris = datasets.load_iris() #鸢尾花 for classification
# 获取数据的特征数据
iris['data']
array([[5.1, 3.5, 1.4, 0.2],
       [4.9, 3. , 1.4, 0.2],
       [4.7, 3.2, 1.3, 0.2],
       [4.6, 3.1, 1.5, 0.2],
       [5. , 3.6, 1.4, 0.2],
       [5.4, 3.9, 1.7, 0.4],
       [4.6, 3.4, 1.4, 0.3],
       [5. , 3.4, 1.5, 0.2],
       [4.4, 2.9, 1.4, 0.2],
       [4.9, 3.1, 1.5, 0.1],
# 获取数据的标签
iris['target']
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
       0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
       1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
       1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
       2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
       2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2])
# 获取数据集特征名称
iris['feature_names']
['sepal length (cm)',
 'sepal width (cm)',
 'petal length (cm)',
 'petal width (cm)']
# 获取数据集标签名称
iris['target_names']
array(['setosa', 'versicolor', 'virginica'], dtype='<U10')
# 获取数据集标签名称:分类名称
iris['target_names']
array(['setosa', 'versicolor', 'virginica'], dtype='<U10')

2.3 代码示例-2:datasets.load_digits() #手写数字识别 

# 加载数据集
digits = datasets.load_digits() #手写数字识别 for classification
# 数据集的特征数据
digits['data']
array([[ 0.,  0.,  5., ...,  0.,  0.,  0.],
       [ 0.,  0.,  0., ..., 10.,  0.,  0.],
       [ 0.,  0.,  0., ..., 16.,  9.,  0.],
       ...,
       [ 0.,  0.,  1., ...,  6.,  0.,  0.],
       [ 0.,  0.,  2., ..., 12.,  0.,  0.],
       [ 0.,  0., 10., ..., 12.,  1.,  0.]])
# 数据集对应的标签
digits['target']
array([0, 1, 2, ..., 8, 9, 8])
# 数据集特征名称:8 * 8 = 256个像素点
digits['feature_names']
['pixel_0_0',
 'pixel_0_1',
 'pixel_0_2',
 'pixel_0_3',
 'pixel_0_4',
 'pixel_0_5',
.................
 'pixel_7_0',
 'pixel_7_1',
 'pixel_7_2',
 'pixel_7_3',
 'pixel_7_4',
 'pixel_7_5',
 'pixel_7_6',
 'pixel_7_7']
# 分类标签的名称
digits['target_names']
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

2.4 代码示例-3:datasets.load_digits() #手写数字识别 

# 加载数据集
boston = datasets.load_boston() #波士顿房价 for regression
# 获取数据集特征数据
boston['data']
array([[6.3200e-03, 1.8000e+01, 2.3100e+00, ..., 1.5300e+01, 3.9690e+02,
        4.9800e+00],
       [2.7310e-02, 0.0000e+00, 7.0700e+00, ..., 1.7800e+01, 3.9690e+02,
        9.1400e+00],
       [2.7290e-02, 0.0000e+00, 7.0700e+00, ..., 1.7800e+01, 3.9283e+02,
        4.0300e+00],
       ...,
       [6.0760e-02, 0.0000e+00, 1.1930e+01, ..., 2.1000e+01, 3.9690e+02,
        5.6400e+00],
       [1.0959e-01, 0.0000e+00, 1.1930e+01, ..., 2.1000e+01, 3.9345e+02,
        6.4800e+00],
       [4.7410e-02, 0.0000e+00, 1.1930e+01, ..., 2.1000e+01, 3.9690e+02,
        7.8800e+00]])
# 获取数据集标签
boston['target']
array([24. , 21.6, 34.7, 33.4, 36.2, 28.7, 22.9, 27.1, 16.5, 18.9, 15. ,
       18.9, 21.7, 20.4, 18.2, 19.9, 23.1, 17.5, 20.2, 18.2, 13.6, 19.6,
       15.2, 14.5, 15.6, 13.9, 16.6, 14.8, 18.4, 21. , 12.7, 14.5, 13.2,
       13.1, 13.5, 18.9, 20. , 21. , 24.7, 30.8, 34.9, 26.6, 25.3, 24.7,
       21.2, 19.3, 20. , 16.6, 14.4, 19.4, 19.7, 20.5, 25. , 23.4, 18.9,
       35.4, 24.7, 31.6, 23.3, 19.6, 18.7, 16. , 22.2, 25. , 33. , 23.5,
       19.4, 22. , 17.4, 20.9, 24.2, 21.7, 22.8, 23.4, 24.1, 21.4, 20. ,
       20.8, 21.2, 20.3, 28. , 23.9, 24.8, 22.9, 23.9, 26.6, 22.5, 22.2,
       23.6, 28.7, 22.6, 22. , 22.9, 25. , 20.6, 28.4, 21.4, 38.7, 43.8,
       33.2, 27.5, 26.5, 18.6, 19.3, 20.1, 19.5, 19.5, 20.4, 19.8, 19.4,
       21.7, 22.8, 18.8, 18.7, 18.5, 18.3, 21.2, 19.2, 20.4, 19.3, 22. ,
       20.3, 20.5, 17.3, 18.8, 21.4, 15.7, 16.2, 18. , 14.3, 19.2, 19.6,
       23. , 18.4, 15.6, 18.1, 17.4, 17.1, 13.3, 17.8, 14. , 14.4, 13.4,
       15.6, 11.8, 13.8, 15.6, 14.6, 17.8, 15.4, 21.5, 19.6, 15.3, 19.4,

............................

# 获取特征数据的特征名称
boston['feature_names']
array(['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD',
       'TAX', 'PTRATIO', 'B', 'LSTAT'], dtype='<U7')

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/123219072

以上是关于[机器学习与scikit-learn-5]:数据集获取的主要方式-1-自带数据集的主要内容,如果未能解决你的问题,请参考以下文章

机器学习:验证数据集与交叉验证

利用加州大学机器学习库的酒数据集进行回归问题学习

机器学习与Tensorflow——机器学习基本概念tensorflow实现简单线性回归

机器学习系列(二十四)——交叉验证与偏方差权衡

机器学习——Boosting算法与Adaboost算法

机器学习基石:04 Feasibility of Learning