如何在 Python 中使用 Scikit-Learn 加载数据

在构建机器学习模型之前,您需要将数据加载到内存中。

在本帖中,您将了解如何使用 Scikit-Learn 在 Python 中加载机器学习数据。

通过我的新书《Python 机器学习精通》快速启动您的项目,其中包含分步教程和所有示例的Python 源代码文件。

让我们开始吧。

  • 2018年3月更新:添加了替代链接以下载数据集,因为原始链接似乎已被删除。
load csv data

加载 CSV 数据
照片来源:Jim Makos,保留部分权利

打包数据集

Scikit-Learn 库附带了数据集。这些数据集对于在您自己的工作中学习某个机器学习算法或库功能很有用。

本示例演示了如何加载著名的 鸢尾花数据集

从 CSV 加载

在本地工作站或远程服务器上,数据集通常以 CSV 文件形式存在。

本示例向您展示了如何从 URL 加载 CSV 文件,在此情况下为 Pima 印第安人糖尿病分类数据集。

你可以在此处了解更多关于此数据集的信息:

您可以从准备好的 X 和 y 变量训练机器学习模型。

总结

在本帖中,您了解了 Scikit-Learn 方法附带了包括鸢尾花数据集在内的打包数据集。这些数据集可以轻松加载,并用于探索和试验不同的机器学习模型。

您还了解了如何使用 Scikit-Learn 加载 CSV 数据。您学习了一种使用 urllib 库从网络打开 CSV 文件的方法,以及如何将这些数据读取为 NumPy 矩阵以供 Scikit-Learn 使用。

发现 Python 中的快速机器学习!

Master Machine Learning With Python

在几分钟内开发您自己的模型

...只需几行 scikit-learn 代码

在我的新电子书中学习如何操作
精通 Python 机器学习

涵盖自学教程端到端项目,例如
加载数据可视化建模调优等等...

最终将机器学习带入
您自己的项目

跳过学术理论。只看结果。

查看内容

19 条对《如何使用 Scikit-Learn 在 Python 中加载数据》的回复

  1. retsreg 2015 年 1 月 12 日上午 7:10 #

    很高兴看到如何从 URL 加载数据。您有如何实际加载文本文件的示例吗?

  2. Tarik 2015 年 2 月 24 日上午 8:21 #

    我认为有一个小错误。
    当代码将特征分隔到 X 数组时,它缺少第 8 个特征。
    所以第十二行应该是:X = dataset[:,0:8]
    这样,它将包含数据集中的最后一个特征,就在目标之前。

  3. Robin 2015 年 4 月 5 日上午 6:32 #

    您好,谢谢。请注意,对于 Python 3*,应该是“import urllib.request”,然后是“raw_data = urllib.request.urlopen(url)”,而对于 Python 2*,应该是“import urllib2”,然后是“raw_data = urllib2.urlopen(url)”。

  4. emilia 2015 年 6 月 10 日上午 4:35 #

    我正在准备一个用于 Scikit-Learn 的文件,我想知道如何构建这个文件,我有我的实例、特征和类别。我不确定如何制作 Scikit-Learn 加载的文件。您能澄清一下吗?

    • mod233 2018 年 3 月 22 日上午 11:46 #

      我也不知道。您现在知道如何构建 Scikit-Learn 的文件了吗?… 我真的很需要您的帮助…

  5. abhinav 2017 年 8 月 31 日晚上 11:36 #

    很棒的博客!非常感谢,非常有帮助

  6. shivaprasad 2017 年 10 月 22 日下午 5:16 #

    您好,先生,我是数据科学的新手,我读了您写的书,比如《机器学习精通》、《从零开始的机器学习算法》和《机器学习算法大师》。我读完了这些书,下一步我需要遵循什么?请指导我。

  7. shivaprasad 2017 年 10 月 24 日下午 2:48 #

    非常感谢您,先生

  8. Yuliyan 2017 年 12 月 1 日上午 1:53 #

    亲爱的 Jason,

    很棒的博文,谢谢!但是,Tarik 的评论(见上文)似乎是正确的。因为我应用了您的代码,所以我可能犯了一个错误。检查此操作的输出确实是好的。不知何故,当您像这样指定数组时:
    X = dataset[:,0:8] 最后一个列实际上不包含在结果数组中!所以它实际上是从 0-7(这正是您想要的!)。如果您写 X = dataset[:,0:7],那么您就缺少了第 8 列!下一行是正确的 y = dataset[:,8],这是第 9 列!

    请考虑编辑代码。

    祝好
    Yuliyan

  9. Yohan 2020 年 10 月 11 日下午 12:01 #

    有没有什么方法可以不用 URL 来学习这些鸢尾花数据集的教程?我理想情况下想将它换成本地自定义数据集来更好地理解代码,任何帮助都将不胜感激。

留下回复

Machine Learning Mastery 是 Guiding Tech Media 的一部分,Guiding Tech Media 是一家领先的数字媒体出版商,专注于帮助人们了解技术。访问我们的公司网站以了解更多关于我们的使命和团队的信息。