paint-brush
用于构建机器学习模型的 16 个最佳 Sklearn 数据集by@datasets
27,183
27,183

用于构建机器学习模型的 16 个最佳 Sklearn 数据集

Sklearn 是一个构建在 SciPy 之上的用于机器学习的 Python 模块。由于其广泛的算法和易用性,它是独一无二的。数据为机器学习算法和 scikit-learn 提供动力。 Sklearn 提供高质量的数据集,被研究人员、从业者和爱好者广泛使用。
featured image - 用于构建机器学习模型的 16 个最佳 Sklearn 数据集
Open Datasets Compiled by HackerNoon HackerNoon profile picture

数据为机器学习算法和 scikit-learn 或学习提供被研究人员、从业者和爱好者广泛使用的高质量数据集。 Scikit-learn (sklearn) 是一个构建在 SciPy 之上的用于机器学习的 Python 模块。由于其广泛的算法、易用性和与其他 Python 库的集成,它是独一无二的。

什么是“Sklearn 数据集”?

Sklearn 数据集作为 scikit-learn 的一部分包含在内(学习) 库,因此它们与库一起预装。因此,您可以轻松访问和加载这些数据集,而无需单独下载它们。


要使用特定数据集,您只需从 sklearn.datasets 模块导入它并调用适当的函数将数据加载到您的程序中。


这些数据集通常经过预处理并可以使用,这为需要试验不同机器学习模型和算法的数据从业者节省了时间和精力。

Sklearn 库中的完整数据集列表

  1. 鸢尾花
  2. 糖尿病
  3. 位数
  4. 林内鲁德
  5. 葡萄酒
  6. 乳腺癌威斯康星州
  7. 波士顿住房
  8. 奥利维蒂面孔
  9. 加州住房
  10. MNIST
  11. 时尚-MNIST
  12. 分类
  13. 回归
  14. make_blobs
  15. make_moons 和 make_circles
  16. Make_sparse_coded_signal

预装(玩具)Sklearn 数据集

1.鸢尾花

该数据集包括 150 朵鸢尾花的萼片长度、萼片宽度、花瓣长度和花瓣宽度的测量值,这些鸢尾花属于 3 个不同的物种:setosa、versicolor 和 virginica。鸢尾花数据集有 150 行和 5 列,存储为一个数据框,其中一列代表每朵花的种类。


变量包括:


  • Sepal.Length - sepal.length 表示萼片的长度(以厘米为单位)。
  • Sepal.Width - sepal.width 表示萼片的宽度(以厘米为单位)。
  • Petal.Length - petal.length 表示花瓣的长度(以厘米为单位)。
  • Species - species 变量表示鸢尾花的种类,具有三个可能的值:setosa、versicolor 和 virginica。


您可以使用 sklearn.datasets 模块中的load_iris函数直接从 sklearn 加载鸢尾花数据集。


 # To install sklearn pip install scikit-learn # To import sklearn from sklearn.datasets import load_iris # Load the iris dataset iris = load_iris() # Print the dataset description print(iris.describe())


使用 sklearn 加载 Iris 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_iris.html 2023 年 3 月 27 日。

2.糖尿病

这个 sklearn 数据集包含 442 名糖尿病患者的信息,包括人口统计和临床测量:

  • 年龄
  • 性别
  • 体重指数 (BMI)
  • 平均血压
  • 六种血清测量值(例如总胆固醇、低密度脂蛋白 (LDL) 胆固醇、高密度脂蛋白 (HDL) 胆固醇)。
  • 糖尿病疾病进展 (HbA1c) 的定量测量。


可以使用 sklearn.datasets 模块中的load_diabetes()函数加载糖尿病数据集。


 from sklearn.datasets import load_diabetes # Load the diabetes dataset diabetes = load_diabetes() # Print some information about the dataset print(diabetes.describe())


使用 sklearn 加载糖尿病数据集的代码。从...获得https://scikit-learn.org/stable/datasets/toy_dataset.html#diabetes-dataset 2023 年 3 月 28 日。

3.位数

这个 sklearn 数据集是从 0 到 9 的手写数字的集合,存储为灰度图像。它总共包含 1797 个样本,每个样本都是一个形状为 (8,8) 的二维数组。 digits sklearn 数据集中有 64 个变量(或特征),对应于每个数字图像中的 64 个像素。


可以使用 sklearn.datasets 模块中的load_digits()函数加载 Digits 数据集。


 from sklearn.datasets import load_digits # Load the digits dataset digits = load_digits() # Print the features and target data print(digits.data) print(digits.target)


使用 sklearn 加载数字数据集的代码。从...获得https://scikit-learn.org/stable/datasets/toy_dataset.html#optical-recognition-of-handwritten-digits-dataset 2023 年 3 月 29 日。


4. 林内鲁德

Linnerud 数据集包含 20 名职业运动员的身体和生理测量数据。


数据集包括以下变量:


  • 三个体育锻炼变量 - 引体向上、仰卧起坐和开合跳。
  • 三个生理测量变量——脉搏、收缩压和舒张压。


使用 sklearn 在 Python 中加载 Linnerud 数据集:


 from sklearn.datasets import load_linnerud linnerud = load_linnerud()


使用 sklearn 加载 linnerud 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_linnerud.html#sklearn.datasets.load_linnerud 2023 年 3 月 27 日。

5.葡萄酒

此 sklearn 数据集包含对意大利特定地区种植的葡萄酒进行化学分析的结果,以将葡萄酒分类为正确的品种。


数据集中的一些变量:


  • 酒精
  • 苹果酸
  • 灰的碱度
  • 总酚
  • 类黄酮


可以使用 sklearn.datasets 模块中的load_wine()函数加载 Wine 数据集。


 from sklearn.datasets import load_wine # Load the Wine dataset wine_data = load_wine() # Access the features and targets of the dataset X = wine_data.data # Features y = wine_data.target # Targets # Access the feature names and target names of the dataset feature_names = wine_data.feature_names target_names = wine_data.target_names


使用 sklearn 加载葡萄酒质量数据集的代码。从...获得https://scikit-learn.org/stable/datasets/toy_dataset.html#wine-recognition-dataset 2023 年 3 月 28 日。

6. 乳腺癌威斯康星数据集

该 sklearn 数据集包含有关乳腺癌肿瘤的信息,最初由 William H. Wolberg 博士创建。创建该数据集是为了帮助研究人员和机器学习从业者将肿瘤分类为恶性(癌性)或良性(非癌性)。


该数据集中包含的一些变量:


  • 身份证号
  • 诊断(M = 恶性,B = 良性)。
  • 半径(从中心到周长上各点的平均距离)。
  • 纹理(灰度值的标准偏差)。
  • 周长
  • 区域
  • 平滑度(半径长度的局部变化)。
  • 紧凑性(周长 ^2 / 面积 - 1.0)。
  • 凹度(轮廓凹陷部分的严重程度)。
  • 凹点(轮廓凹陷部分的数量)。
  • 对称
  • 分形维数(“海岸线近似”- 1)。


您可以使用 sklearn.datasets 模块中的load_breast_cancer函数直接从 sklearn 加载 Breast Cancer Wisconsin 数据集。


 from sklearn.datasets import load_breast_cancer # Load the Breast Cancer Wisconsin dataset cancer = load_breast_cancer() # Print the dataset description print(cancer.describe())


使用 sklearn 加载乳腺癌威斯康星数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_breast_cancer.html 2023 年 3 月 28 日。


乳腺癌威斯康星数据集

真实世界的 Sklearn 数据集

现实世界的 sklearn 数据集基于现实世界的问题,通常用于使用 Python 中的 sklearn 库练习和试验机器学习算法和技术。

7. 波士顿住房

波士顿住房数据集包含马萨诸塞州波士顿地区的住房信息。它有大约 506 行和 14 列数据。


数据集中的一些变量包括:


  • CRIM - 城镇人均犯罪率。
  • ZN - 划为超过 25,000 平方英尺地块的住宅用地比例。
  • INDUS - 每个城镇非零售商业英亩的比例。
  • CHAS - 查尔斯河虚拟变量(= 1 如果区域边界河流;否则为 0)。
  • NOX - 一氧化氮浓度(千万分之一)。
  • RM - 每个住宅的平均房间数。
  • AGE - 1940 年之前建造的自住单元的比例。
  • DIS - 到波士顿五个就业中心的加权距离。
  • RAD - 径向高速公路可达性指数。
  • TAX - 每 10,000 美元的全值财产税税率。
  • PTRATIO - 按城镇划分的师生比例。
  • B - 1000(Bk - 0.63)^2 其中 -Bk 是城镇黑人的比例。
  • LSTAT - 人口地位较低的百分比。
  • MEDV - 1000 美元的自住房屋的中值。


您可以使用 sklearn.datasets 模块中的load_boston函数直接从 scikit-learn 加载 Boston Housing 数据集。


 from sklearn.datasets import load_boston # Load the Boston Housing dataset boston = load_boston() # Print the dataset description print(boston.describe())


使用 sklearn 加载波士顿住房数据集的代码。从...获得https://scikit-learn.org/0.15/modules/generated/sklearn.datasets.load_boston.html 2023 年 3 月 29 日。

8. 奥利维蒂面孔

Olivetti Faces 数据集是 1992 年 4 月至 1994 年 4 月期间在 AT&T 实验室拍摄的人脸灰度图像的集合。它包含 10 个人的 400 张图像,每个人有 40 张以不同角度和不同光照条件拍摄的图像。


您可以使用数据集模块中的fetch_olivetti_faces函数在 sklearn 中加载 Olivetti Faces 数据集。


 from sklearn.datasets import fetch_olivetti_faces # Load the dataset faces = fetch_olivetti_faces() # Get the data and target labels X = faces.data y = faces.target


使用 sklearn 加载 Olivetti Faces 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.fetch_olivetti_faces.html 2023 年 3 月 29 日。

9. 加州住房

这个 sklearn 数据集包含有关房屋中值的信息,以及加利福尼亚州人口普查区的属性。它还包括 20,640 个实例和 8 个特征。


数据集中的一些变量:


  • MedInc - 收入中位数。
  • HouseAge - 街区房屋的平均年龄。
  • AveRooms - 每个家庭的平均房间数。
  • AveBedrms - 每个家庭的平均卧室数。
  • 人口 - 区块人口。
  • AveOccup - 平均家庭入住率。
  • 纬度 - 以十进制表示的块的纬度。
  • 经度 - 以十进制表示的块的经度。


您可以使用 sklearn 中的fetch_california_housing函数加载加州住房数据集。


 from sklearn.datasets import fetch_california_housing # Load the dataset california_housing = fetch_california_housing() # Get the features and target variable X = california_housing.data y = california_housing.target


使用 sklearn 加载加州住房数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.fetch_california_housing.html 2023 年 3 月 29 日。

10. MNIST

MNIST 数据集很受欢迎,广泛应用于机器学习和计算机视觉领域。它由 70,000 张手写数字 0-9 的灰度图像组成,其中 60,000 张图像用于训练,10,000 张图像用于测试。每张图片的大小为 28x28 像素,并有一个相应的标签来表示它代表的是哪些数字。


您可以使用以下代码从 sklearn 加载 MNIST 数据集:


 from sklearn.datasets import fetch_openml mnist = fetch_openml('mnist_784')


注意:MNIST 数据集是 Digits 数据集的一个子集。


使用 sklearn 加载 MNIST 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.fetch_openml.html#sklearn.datasets.fetch_openml 2023 年 3 月 30 日。


11.时尚-MNIST

Fashion MNIST 数据集由 Zalando Research 创建,用于替代原始 MNIST 数据集。 Fashion MNIST 数据集由 70,000 张灰度图像(训练集 60,000 张和测试集 10,000 张)组成。


图片大小为 28x28 像素,代表 10 种不同类别的服装,包括 T 恤/上衣、裤子、套头衫、连衣裙、外套、凉鞋、衬衫、运动鞋、包和踝靴。它类似于原始 MNIST 数据集,但由于服装项目的复杂性和多样性更高,因此分类任务更具挑战性。


您可以使用 fetch_openml 函数加载此 sklearn 数据集。


 from sklearn.datasets import fetch_openml fmnist = fetch_openml(name='Fashion-MNIST')


使用 sklearn 加载 Fashion MNIST 数据集的代码。取自__ https://scikit-learn.org/stable/modules/generated/sklearn.datasets.fetch_openml.html#sklearn.datasets.fetch_openml __ 2023 年 3 月 30 日。

生成的 Sklearn 数据集

生成的 sklearn 数据集是合成数据集,使用 Python 中的 sklearn 库生成。它们用于测试、基准测试和开发机器学习算法/模型。

12. 分类

此函数生成具有指定数量的样本、特征和信息特征的随机 n 类分类数据集。


下面是一个示例代码,用于生成包含 100 个样本、5 个特征和 3 个类的 sklearn 数据集:


 from sklearn.datasets import make_classification X, y = make_classification(n_samples=100, n_features=5, n_informative=3, n_classes=3, random_state=42)


此代码生成一个包含 100 个样本和 5 个特征的数据集,其中包含 3 个类别和 3 个信息特征。其余特征将是冗余的或噪声。


使用 sklearn 加载 make_classification 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.make_classification.html#sklearn.datasets.make_classification 2023 年 3 月 30 日。

13. 回归

此函数生成具有指定数量的样本、特征和噪声的随机回归数据集。


下面是一个示例代码,用于生成具有 100 个样本、5 个特征和 0.1 噪声级别的 sklearn 数据集:


 from sklearn.datasets import make_regression X, y = make_regression(n_samples=100, n_features=5, noise=0.1, random_state=42)


此代码生成一个包含 100 个样本和 5 个特征的数据集,噪声级别为 0.1。目标变量 y 将是一个连续变量。


使用 sklearn 加载 make_regression 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.make_regression.html#sklearn.datasets.make_regression 2023 年 3 月 30 日。

14. make_blobs

此函数生成具有指定数量的样本和簇的随机数据集。


下面是生成包含 100 个样本和 3 个集群的 sklearn 数据集的示例代码:


 from sklearn.datasets import make_blobs X, y = make_blobs(n_samples=100, centers=3, random_state=42)


此代码生成一个包含 100 个样本和 2 个特征(x 和 y 坐标)的数据集,其中 3 个簇集中在随机位置,并且没有噪声。


使用 sklearn 加载 make_blobs 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.make_blobs.html#sklearn.datasets.make_blobs 2023 年 3 月 30 日。

15. make_moons制作圆圈

这些函数生成具有非线性边界的数据集,可用于测试非线性分类算法。


下面是加载 make_moons 数据集的示例代码:


从 sklearn.datasets 导入 make_moons

X, y = make_moons(n_samples=1000, noise=0.2, random_state=42)


此代码生成一个包含 1000 个样本和 2 个特征(x 和 y 坐标)的数据集,两个类之间具有非线性边界,并且向数据中添加了 0.2 标准差的高斯噪声。


使用 sklearn 加载 make_moons 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.make_moons.html#sklearn.datasets.make_moons 2023 年 3 月 30 日。


下面是生成和加载 make_circles 数据集的示例代码:


 from sklearn.datasets import make_circles X, y = make_circles(n_samples=1000, noise=0.05, random_state=42)


使用 sklearn 加载 make_circles 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.make_circles.html#sklearn.datasets.make_circles 2023 年 3 月 30 日。

16. make_sparse_coded_signal

此函数生成一个稀疏编码信号数据集,可用于测试压缩传感算法。


这是加载此 sklearn 数据集的示例代码:


 from sklearn.datasets import make_sparse_coded_signal X, y, w = make_sparse_coded_signal(n_samples=100, n_components=10, n_features=50, n_nonzero_coefs=3, random_state=42)


此代码生成具有 100 个样本、50 个特征和 10 个原子的稀疏编码信号数据集。


使用 sklearn 加载 make_sparse_coded_signal 数据集的代码。从...获得https://scikit-learn.org/stable/modules/generated/sklearn.datasets.make_sparse_coded_signal.html#sklearn-datasets-make-sparse-coded-signal 2023 年 3 月 30 日。


Sklearn 数据集的常见用例

预装(玩具)Sklearn 数据集

鸢尾花- 此 sklearn 数据集通常用于分类任务,并用作测试分类算法的基准数据集。


糖尿病- 该数据集包含有关糖尿病患者的医疗信息,用于医疗保健分析中的分类和回归任务。


位数- 这个 sklearn 数据集包含手写数字的图像,通常用于图像分类和模式识别任务。


林内鲁德- 该数据集包含 20 名运动员的体能和医疗数据,常用于多元回归分析。


葡萄酒- 此 sklearn 数据集包含葡萄酒的化学分析,通常用于分类和聚类任务。


乳腺癌威斯康星州- 此数据集包含有关乳腺癌患者的医疗信息,通常用于医疗保健分析中的分类任务。

真实世界的 Sklearn 数据集

波士顿住房- 此 sklearn 数据集包含有关波士顿住房的信息,通常用于回归任务。


奥利维蒂面孔- 该数据集包含人脸的灰度图像,通常用于图像分类和人脸识别任务。


加州住房- 此 sklearn 数据集包含有关加利福尼亚州住房的信息,通常用于回归任务。


MNIST - 该数据集包含手写数字图像,通常用于图像分类和模式识别任务。


时尚-MNIST - 此 sklearn 数据集包含服装项目的图像,通常用于图像分类和模式识别任务。

生成的 Sklearn 数据集

分类- 该数据集是为二分类和多分类任务随机生成的数据集。


回归- 该数据集是为回归任务随机生成的数据集。


make_blobs - 这个 sklearn 数据集是一个随机生成的聚类任务数据集。


make_moons制作圆圈- 这些数据集是随机生成的分类任务数据集,通常用于测试非线性分类器。


make_sparse_coded_signal - 该数据集是随机生成的数据集,用于信号处理中的稀疏编码任务。

最后的想法

Sklearn 数据集为开发人员和研究人员提供了一种方便的方法来测试和评估机器学习模型,而无需手动收集和预处理数据。


它们也可供任何人免费下载和使用。


本文的主图是使用提示“虹膜数据集”通过HackerNoon 的 AI 稳定扩散模型生成的。


更多数据集列表:

  1. Excel 数据集
  2. 凯拉斯数据集
  3. R 数据集