作者 | skura
来源 | AI开发者
大多数有抱负的数据科学家是通过学习为开发人员开设的编程课程开始认识 python 的,他们也开始解决类似 leetcode 网站上的 python 编程难题。他们认为在开始使用 python 分析数据之前,必须熟悉编程概念。
资深数据分析师 Manu Jeevan 认为,这是一个巨大的错误,因为数据科学家使用 python 来对数据进行检索、清洗、可视化和构建模型,而不是开发软件应用程序。实际上,为了完成这些任务,你必须将大部分时间集中在学习 python 中的模块和库上。他认为,学习数据科学的正确姿势应该如下文,AI 开发者进行了编译整理。
请按照下面这个步骤来学习数据科学的 python。
配置编程环境
Jupyter Notebook 是开发和展示数据科学项目的强大编程环境。
在电脑上安装 Jupyter Notebook 最简单的方法是通过 Anaconda 进行安装。Anaconda 是数据科学中使用最广泛的 python 工具,它预装了所有最流行的库。
你可以浏览标题为「A Beginner’s Guide to Installing Jupyter Notebook Using Anaconda Distribution」的博客文章(https://medium.com/better-programming/beginners-quick-guide-for-handling-issues-launching-jupyter-notebook-for-python-using-anaconda-8be3d57a209b),了解如何安装 Anaconda。安装 Anaconda 时,请选择最新的 python 3 版本。
安装完 Anaconda 后,请阅读 Code Academy 的这篇文章(https://www.codecademy.com/articles/how-to-use-jupyter-notebooks),了解如何使用 Jupyter Notebook。
只学习 python 的基础知识
Code Academy 有一门关于 python 的优秀课程,大约需要 20 个小时才能完成。你不必升级到 pro 版本,因为你的目标只是熟悉 python 编程语言的基础知识。课程地址:https://www.codecademy.com/learn/learn-python-3
NumPy 和 Pandas,学习的绝佳资源
在处理计算量大的算法和大量数据时,python 速度较慢。你可能会问,既然如此那为什么 python 是数据科学最流行的编程语言?
答案是,在 python 中,很容易以 C 或 Fortran 扩展的形式将数字处理任务转移到底层。这正是 NumPy 和 Pandas 所做的事情。
首先,你应该学会 NumPy。它是用 python 进行科学计算的最基本的模块。NumPy 支持高度优化的多维数组,这是大多数机器学习算法最基本的数据结构。
接下来,你应该学习 Pandas。数据科学家花费大部分时间清洗数据,这也被称为数据整。
Pandas 是操作数据最流行的 python 库。Pandas 是 NumPy 的延伸。Pandas 的底层代码广泛使用 NumPy 库。Pandas 的主要数据结构称为数据帧。
Pandas 的创造者 Wes McKinney 写了一本很棒的书,叫做《Python for Data Analysis》(https://www.amazon.com/Python-Data-Analysis-Wrangling-IPython-ebook/dp/B075X4LT6K)。在书中的第 4、5、7、8 和 10 章可以学习 Pandas 和 NumPy。这些章节涵盖了最常用的 NumPy 和 Pandas 特性来处理数据。
学习使用 Matplotlib 可视化数据
Matplotlib 是用于创建基本可视化图形的基本 python 包。你必须学习如何使用 Matplotlib 创建一些最常见的图表,如折线图、条形图、散点图、柱状图和方框图。
另一个建立在 Matplotlib 之上并与 Pandas 紧密结合的好的绘图库是 Seaborn。在这个阶段,我建议你快速学习如何在 Matplotlib 中创建基本图表,而不是专注于 Seaborn。
我写了一个关于如何使用 Matplotlib 开发基本图的教程,该教程由四个部分组成。
你可以通过这些教程来掌握 Matplotlib 的基本知识。
简而言之,你不必花太多时间学习 Matplotlib,因为现在公司已经开始采用 Tableau 和 Qlik 等工具来创建交互式可视化。
数据有组织地驻留在数据库中。因此,你需要知道如何使用 SQL 检索数据,并使用 python 在 Jupyter Notebook 中执行分析。
数据科学家使用 SQL 和 Pandas 来操纵数据。有一些数据操作任务使用 SQL 就可以很容易地执行,并且有一些任务可以使用 Pandas 高效地完成。我个人喜欢使用 SQL 来检索数据并在 Pandas 中进行操作。
如今,公司使用 Mode Analytics 和 Databricks 等分析平台来轻松地使用 python 和 SQL。
所以,你应该知道如何一起有效地使用 SQL 和 python。要了解这一点,你可以在计算机上安装 SQLite 数据库,并在其中存储一个 CSV 文件,然后使用 python 和 SQL 对其进行分析。
这里有一篇精彩的博客文章,向你展示了如何做到这一点:Programming with Databases in Python using SQLite(https://medium.com/analytics-vidhya/programming-with-databases-in-python-using-sqlite-4cecbef51ab9)。
在浏览上述博客文章之前,你应该了解 SQL 的基础知识。Mode Analytics 上有一个很好的关于 SQL 的教程:Introduction to SQL(https://medium.com/analytics-vidhya/programming-with-databases-in-python-using-sqlite-4cecbef51ab9)。通过他们的基本 SQL 部分,了解 SQL 的基本知识,每个数据科学家都应该知道如何使用 SQL 有效地检索数据。
学习和 python 相关的基本统计学知识
多数有抱负的数据科学家在不学习统计学的基础知识的情况下,就直接跳到机器学习知识的学习中。
不要犯这个错误,因为统计学是数据科学的支柱。而且,很多数据科学家学习统计学只是学习理论概念,而不是学习实践概念。
我的意思是,通过实践概念,你应该知道什么样的问题可以用统计学来解决,了解使用统计数据可以解决哪些挑战。
以下是你应该了解的一些基本统计概念:
抽样、频率分布、平均值、中位数、模式、变异性度量、概率基础、显著性检验、标准差、z 评分、置信区间和假设检验(包括 A/B 检验)
要学习这些知识,有一本很好的书可以看看:《Practical Statistics for Data Scientists: 50 Essential Concepts》(https://www.amazon.com/Practical-Statistics-Data-Scientists-Essential/dp/9352135652)。不幸的是,本书中的代码示例是用 R 编写的,但是很多人包括我自己在内使用的是 Python。
我建议你阅读本书的前四章。阅读本书的前 4 章,了解我前面提到的基本统计概念,你可以忽略代码示例,只了解这些概念。本书的其余章节主要集中在机器学习上。我将在下一部分讨论如何学习机器学习。
大多数人建议使用 Think Stats (https://www.amazon.com/Think-Stats-Allen-B-Downey/dp/1449307116)来学习 python 的统计知识,但这本书的作者教授了自己的自定义函数,而不是使用标准的 python 库来进行统计知识讲解。因此,我不推荐这本书。
接下来,你的目标是实现在 Python 中学习的基本概念。StatsModels 是一个流行的 python 库,用于在 python 中构建统计模型。StatsModels 网站提供了关于如何使用 Python 实现统计概念的优秀教程。
或者,你也可以观看 Gaël Varoquaux 的视频。他向你展示了如何使用 Pandas 和统计模型进行推理和探索性统计。
使用 Scikit-Learn 进行机器学习
Scikit-Learn 是 Python 中最流行的机器学习库之一。你的目标是学习如何使用 Scikit Learn 实现一些最常见的机器学习算法。
你应该像下面这样做。
首先,观看 Andrew Ng 在 Coursera 上的机器学习课程(https://www.coursera.org/learn/machine-learning)的第 1、2、 3、6,、7 和第 8 周视频。我跳过了关于神经网络的部分,因为作为初学者,你必须关注最通用的机器学习技术。
完成后,阅读「Hands-On Machine Learning with Scikit-Learn and TensorFlow」一书(https://www.amazon.com/Hands-Machine-Learning-Scikit-Learn-TensorFlow/dp/1491962291)。你只需浏览这本书的第一部分(大约 300 页),它是最实用的机器学习书籍之一。
通过完成本书中的编码练习,你将学习如何使用 python 实现你在 Andrew Ng 课程中学习到的理论概念。
结论
最后一步是做一个涵盖上述所有步骤的数据科学项目。你可以找到你喜欢的数据集,然后提出有趣的业务问题,再通过分析来回答这些问题。但是,请不要选择像泰坦尼克号这样的通用数据集。你可以阅读「19 places to find free data sets for your data science project」来查找合适的数据集(https://www.dataquest.io/blog/free-datasets-for-projects/)。
另一种方法是将数据科学应用到你感兴趣的领域。例如,如果你想预测股票市场价格,那么你可以从 Yahoo Finance (https://www.scrapehero.com/scrape-yahoo-finance-stock-market-data/)中获取实时数据,并将其存储在 SQL 数据库中,然后使用机器学习来预测股票价格。
如果你希望从其它行业转行到数据科学,我建议你完成一个利用你的领域专业知识的项目。关于这些,我在以前的博客文章"A Step-by-Step Guide to Transitioning your Career to Data Science – Part 1"(https://www.kdnuggets.com/2019/05/guide-transitioning-career-data-science-part-1.html) 和"A Step-by-Step Guide to Transitioning your Career to Data Science – Part 2"(https://www.kdnuggets.com/2019/06/guide-transitioning-career-data-science-part-2.html)中有提到过。
数据分析咨询请扫描二维码
在准备数据分析师面试时,掌握高频考题及其解答是应对面试的关键。为了帮助大家轻松上岸,以下是10个高频考题及其详细解析,外加 ...
2024-12-20互联网数据分析师是一个热门且综合性的职业,他们通过数据挖掘和分析,为企业的业务决策和运营优化提供强有力的支持。尤其在如今 ...
2024-12-20在现代商业环境中,数据分析师是不可或缺的角色。他们的工作不仅仅是对数据进行深入分析,更是协助企业从复杂的数据信息中提炼出 ...
2024-12-20随着大数据时代的到来,数据驱动的决策方式开始受到越来越多企业的青睐。近年来,数据分析在人力资源管理中正在扮演着至关重要的 ...
2024-12-20在数据分析的世界里,表面上的技术操作只是“入门票”,而真正的高手则需要打破一些“看不见的墙”。这些“隐形天花板”限制了数 ...
2024-12-19在数据分析领域,尽管行业前景广阔、岗位需求旺盛,但实际的工作难度却远超很多人的想象。很多新手初入数据分析岗位时,常常被各 ...
2024-12-19入门数据分析,许多人都会感到“难”,但这“难”究竟难在哪儿?对于新手而言,往往不是技术不行,而是思维方式、业务理解和实践 ...
2024-12-19在如今的行业动荡背景下,数据分析师的职业前景虽然面临一些挑战,但也充满了许多新的机会。随着技术的不断发展和多领域需求的提 ...
2024-12-19在信息爆炸的时代,数据分析师如同探险家,在浩瀚的数据海洋中寻觅有价值的宝藏。这不仅需要技术上的过硬实力,还需要一种艺术家 ...
2024-12-19在当今信息化社会,大数据已成为各行各业不可或缺的宝贵资源。大数据专业应运而生,旨在培养具备扎实理论基础和实践能力,能够应 ...
2024-12-19阿里P8、P9失业都找不到工作?是我们孤陋寡闻还是世界真的已经“癫”成这样了? 案例一:本硕都是 985,所学的专业也是当红专业 ...
2024-12-19CDA持证人Louis CDA持证人基本情况 我大学是在一个二线城市的一所普通二本院校读的,专业是旅游管理,非计算机非统计学。毕业之 ...
2024-12-18最近,知乎上有个很火的话题:“一个人为何会陷入社会底层”? 有人说,这个世界上只有一个分水岭,就是“羊水”;还有人说,一 ...
2024-12-18在这个数据驱动的时代,数据分析师的技能需求快速增长。掌握适当的编程语言不仅能增强分析能力,还能帮助分析师从海量数据中提取 ...
2024-12-17在当今信息爆炸的时代,数据分析已经成为许多行业中不可或缺的一部分。想要在这个领域脱颖而出,除了热情和毅力外,你还需要掌握 ...
2024-12-17数据分析,是一项通过科学方法处理数据以获取洞察并支持决策的艺术。无论是在商业环境中提升业绩,还是在科研领域推动创新,数据 ...
2024-12-17在数据分析领域,图表是我们表达数据故事的重要工具。它们不仅让数据变得更加直观,也帮助我们更好地理解数据中的趋势和模式。相 ...
2024-12-16在当今社会,我们身处着一个飞速发展、变化迅猛的时代。不同行业在科技进步、市场需求和政策支持的推动下蓬勃发展,呈现出令人瞩 ...
2024-12-16在现代商业世界中,数据分析师扮演着至关重要的角色。他们通过解析海量数据,为企业战略决策提供有力支持。要有效完成这项任务, ...
2024-12-16在当今数据爆炸的时代,数据分析师是组织中不可或缺的导航者。他们通过从大量数据中提取可操作的洞察力,帮助企业在竞争激烈的市 ...
2024-12-16