Python 软件包为解决科学计算、数据可视化、数据建模和许多其他领域的复杂问题提供了一种对初学者友好且有效的方法。让我们回顾一下 2021 年最受数据分析师和开发人员欢迎的 Python 软件包。
随着数据科学和人工智能的兴起,Python 成为最受欢迎的编程语言之一。它 顶级组织的青睐 。而且 Python 不仅限于数据科学和人工智能;它还 用于许多行业 ,包括区块链、物理、天文学、医学、游戏开发和娱乐。
Python 有几个 关键特性让它如此受欢迎 :它对初学者友好,支持多种职业道路,并且拥有一个热情的社区。然而,学习 Python 的一个关键原因是该语言丰富多样的生态系统。想想任何随机任务,Python 很可能有一个模块或包可以让你的工作效率更高。
什么是 Python 包?
复杂任务最好一步一步解决,一次一个子任务。这就是为什么程序员创建和使用 模块 ,或保存在单独文件中的相关代码集,旨在解决特定任务。
当你拥有许多不同的模块时,你肯定会想要对它们进行分组和组织。Python 包是模块集合的目录。 就像你将计算机文件组织到文件夹和子文件夹中一样,你可以将模块组织到包和子包中。
每个包都应该包含一个名为 的文件
__init__.py
。该文件通常包含相应包的初始化代码。
包含三个子包
my_model
的包示例
training
,
submission
、 和
metrics
.
要从 Python 包访问代码,您可以导入整个包或其特定模块和子包。
例如,要访问中定义的代码
precision.py
,您可以:
-
使用 导入整个包
import my_model
; -
使用 导入
metrics
子包import my_model.metrics
; -
使用以下任一代码片段
precision.py
导入
import my_model.metrics.precision # or from my_model.metrics import precision
您不一定需要创建自己的 Python 包才能享受此工具的好处。有许多内置和第三方包可供您在工作中使用。让我们回顾一下 2024 年最流行的 Python 包。
2024 年十大 Python 软件包
Python 软件包简化了许多重要流程,例如分析和可视化数据、构建机器学习模型、从 Web 捕获非结构化数据以及高效处理图像和文本信息。以下是 2021 年一些最重要的 Python 软件包:
1. NumPy
NumPy 是 Python 中用于科学计算的主要工具。它结合了 Python 的灵活性和简单性以及 C 和 Fortran 等语言的速度。
NumPy 用于:
- 高级数组操作(例如加、乘、切片、重塑、索引)。
- 全面的数学函数。
- 随机数生成。
- 线性代数例程。
- 傅里叶变换等
使用 NumPy,您可以获得编译代码的计算能力,同时使用可访问的 Python 语法。难怪有大量的 Python 软件包和库利用 NumPy 的强大功能。其中包括 pandas、Seaborn、SciPy、OpenCV 等流行软件包。
2. 熊猫
如果您使用表格、时间序列或矩阵数据,pandas 是您的首选 Python 包。它被称为快速、高效且易于使用的数据分析和处理工具。它与数据框对象配合使用;数据框是二维数据的专用结构。数据框有行和列,就像数据库表或 Excel 电子表格一样。
除其他外,熊猫还可用于:
- 从 CSV 和 Excel 文件和 SQL 数据库读取/写入数据。
- 重塑和旋转数据集。
- 对数据集进行切片、索引和子集化。
- 聚合和转换数据。
- 合并和连接数据集。
如果您想了解如何在 Pandas 中使用数据框以及如何使用其基本统计函数计算描述性统计数据,请考虑参加此交互式 Python 数据科学 课程。
3. Matplotlib
Matplotlib 是最常见的数据探索和可视化库。您可以使用它来创建基本图形,例如线图、直方图、散点图、条形图和饼图。您还可以使用此库创建动画和交互式可视化。Matplotlib 是所有其他可视化库的基础。
该库在格式化和样式化图表方面提供了极大的灵活性。您可以自由选择如何显示标签、网格、图例等。但是,要创建复杂且视觉上吸引人的图表,您需要编写大量代码。
例如,假设我们要绘制两个线图:y = 2x 和 z = x 2 ,其中 x 在范围 [0; 100] 内。
我们将首先使用 NumPy 计算这些变量。
import numpy as np
x = np.arange(0,100)
y = x*2
z = x**2
然后,我们使用 Matplotlib 为两个函数创建两个子图并自定义它们的格式和样式:
import matplotlib.pyplot as plt
%matplotlib inline
plt.show()
fig, axes = plt.subplots(nrows=1, ncols=2, figsize=(12,2))
axes[0].plot(x,y, color="green", lw=3)
axes[0].set_xlabel('x')
axes[0].set_ylabel('y')
axes[1].plot(x,z, color="blue", lw=2, ls='--')
axes[1].set_xlabel('x')
axes[1].set_ylabel('z')
如您所见,Matplotlib 语法允许您在一个图中拥有多个子图,设置任何标签,选择线条颜色、宽度、样式等。但是,每个操作都需要额外的代码,并且创建一个视觉上吸引人的图可能会变成一项非常繁琐且耗时的任务。根据您的任务,您可能会发现使用不同的可视化包更有效。
“数据科学 Python 简介” 学习 Python 数据可视化的基础知识 。您将学习如何使用 matplotlib 创建简单的数据可视化。
4. 希博恩
Seaborn 是一个高级接口,仅需几行代码即可绘制美观的统计图形。让我们看看它的实际效果。
在示例中 使用著名的 鸢尾花数据集 山鸢尾 , 维吉尼亚鸢尾 和 杂色鸢尾 )的四个特征——萼片和花瓣的长度和宽度。我们想看看这四个特征如何根据鸢尾品种相互关联。
以下是 seaborn
pairplot
函数解决此任务的方法。请注意,只需三行代码即可创建一个复杂且视觉上吸引人的图表:
import seaborn as sns
iris = sns.load_dataset('iris')
sns.pairplot (iris, hue = 'species', palette = 'pastel')
请注意,所有标签、样式和图例均已自动设置。同样,您可以使用此库轻松创建复杂的热图、小提琴图、联合图、多图网格和许多其他类型的图。
5. scikit-learn
您想运行回归分析吗?或者您有数据分类问题?scikit-learn 是一款高效且适合初学者的预测数据分析工具。除其他功能外,您还可以使用 scikit-learn 来:
- 确定某个对象可能属于哪个类别(用于欺诈检测、图像识别、癌症检测等)。
- 根据可用特征预测连续变量(用于预测房价和通货膨胀)。
- 将相似的对象分组成簇(用于客户细分、社交网络分析等)。
scikit-learn 让编程经验最少的人也能使用 Python 进行机器学习。只需几行代码,您就可以使用随机森林、支持向量机 (SVM)、k 均值、谱聚类等算法对数据进行建模。
6. 请求
该库旨在使使用 Python 的 HTTP 请求更具响应性且更方便用户使用。Requests 提供的直观 JSON 方法可帮助您避免手动将查询字符串添加到 URL。使用 Requests,您可以:
- 定制、检查、授权和配置 HTTP 请求。
- 添加参数、标题和多部分文件。
- 自动解压缩数据。
- 同时上传多个文件。
这个包对于初学者和高级用户来说都是一个真正的福音,使它成为 下载次数最多的 Python 包 .
7. urllib3
urllib3 是另一个用户友好的 Python HTTP 客户端。它是目前 下载次数最多的 PyPi 包 ,它为 Requests 和一些其他流行的 Python 包提供支持。urllib3 提供了标准库所缺少的许多关键功能:
- 线程安全。
- 连接池。
- 正在重试请求。
- 处理 HTTP 重定向。
- 完整的测试覆盖。
8. NLTK
自然语言工具包 (NLTK) 是处理语言数据的领先 Python 平台之一。它是一组语言处理库和程序,提供以下工具包:
- 分类。
- 标记化。
- 词干提取。
- 标记。
- 解析。
- 语义推理。
NLTK 是 Python 中计算语言学的必备工具。它受到语言学家、工程师、研究人员和行业用户的高度评价。
如果您是自然语言处理的新手,您可能会受益于《 使用 Python 中的字符串》 Python 数据科学 的一部分 。
9. 枕头
如果您使用图像数据,请务必查看 Pillow 包。它是 PIL(Python 图像库)的一个分支,已发展成为一种易于使用且高效的 Python 图像处理工具。
使用 Pillow,您可以:
- 打开并保存不同文件类型(JPEG、PNG、GIF、PDF 等)的图像。
- 为图像创建缩略图。
- 使用一组图像过滤器(例如,SMOOTH、BLUR、SHARPEN)。
对于初学者来说这是一个很棒的图像处理工具,并且具有相当强大的图像处理功能。
第10 题测试
该软件包提供了用于测试新代码的各种模块,包括应用程序和库的小型单元测试和复杂的功能测试。
简单的语法和丰富的功能集使 pytest 成为程序员最喜爱的 Python 包之一。此测试自动化框架提供:
- 内置对测试发现的支持。
- 用于测试设置的模块化装置(例如设置数据库连接、URL、输入数据)。
- 丰富的插件架构(315+个外部插件)。
- 内置单元测试。
pytest 是改进程序的绝佳工具。经过良好测试的程序才是好程序!
现在是 2024 年 — 是时候学习 Python 包了!
如果你正在考虑学习 Python 软件包,那么你应该从学习语言本身开始。这将在就业市场上带来显著的竞争优势。程序员、数据分析师、营销人员、办公室职员、科学家、医生,甚至艺术家都可以 用 Python 来改善他们的日常工作 .
为了全面了解 Python 基础知识以及实际用例的经验,我建议参加 提供的交互式学习课程:
- Python 基础 是为那些想要 开始编程的 。它包括三门课程,总共有 229 个编码挑战。这些挑战涵盖变量、if 语句、循环、函数、基本数据结构等。
- 使用 Python 学习编程 Python 基础知识 的扩展版本, 通过五门交互式课程和 419 个编码挑战,您将超越基础知识并获得 Python 数据结构和内置算法的实践经验。
- Python for Data Science 适合对数据分析和数据科学感兴趣的人。它包括五门课程和 329 个编码挑战,涵盖 pandas 和 Matplotlib 包、使用 Python 中的字符串以及处理 CSV、Excel 和 JSON 文件。
额外奖励。 以下是一些 关于您的第一个数据科学项目的想法 。玩得开心!
发表评论 取消回复