掌握Numpy的通用函数用于快速数组计算

主元素的操作,比较,逻辑,聚合和使用Numpy Ufuncs进行高性能阵列处理。

来源:KDnuggets
作者图片 |画布
画布

性能就是一切。不仅仅是在编码或数据科学领域。如果您正在处理更大的数据集,这个迷你实现将节省您的时间。

在 NumPy 中,如果您在数值计算/计算领域追求速度,通用函数将是您的首选工具。

因此,在本文中,我们将介绍和了解如何使用 ufunc,以及它们如何高效地将真实数据转化为见解。一如既往,我们将使用我们平台上的真实数据集。那么让我们首先开始探索这个。

预测价格:应用 NumPy ufunc 的真实数据集

以下是此数据项目的链接:https://platform.stratascratch.com/data-projects/predicting-price

https://platform.stratascratch.com/data-projects/predicting-price

在这个数据项目中,Haensel AMS 要求我们解决这个数据项目,作为数据科学职位招聘过程中的一项带回家的作业。我们首先读取数据集。

将 pandas 导入为 pd

df = pd.read_csv("样本.csv")
df.head()

这是输出。

现在让我们看看这些列。这是代码。

了解 NumPy 的通用函数 (ufuncs)

让我们一步一步地进行。

NumPy 具有通用函数,简称 ufuncs。

这些函数对数组元素进行操作。

你没有写循环。您调用该函数。它适用于 NumPy 中的所有元素。

它在底层使用 C 代码,因此执行过程不需要太多开销。

让我们从一个简单的操作开始。

第 1 步:逐元素加法

您有两列 — para2 和 para3。您想要逐行求和。这是代码:

将 numpy 导入为 np
sum_array = np.add(df["para2"], df["para3"])
打印(sum_array[:5])

sum_array 中的每个值都是该行的 para2 和 para3 的总和。这适用于单个操作中的所有行。

步骤 2:逐元素乘法

您现在有了一个求和数组。

假设您想要缩放该数组 - 也许“应用一个比率或乘数”。

这就是 np.multiply 的用武之地。

现在,每个值都提高了 10%。