Python入门到精通-20个非常有用的Numpy函数

本文介绍了Python中Numpy库的20个实用但不常见的函数,包括np.full_like创建自定义填充的矩阵,np.logspace在对数尺度上生成数据点,np.meshgrid用于创建坐标对,np.triu和np.tril用于创建对角线上方或下方为0的矩阵,以及np.ravel和np.flatten用于数组压缩,np.vstack和np.hstack用于数组堆叠,np.r_和np.c_简化数组拼接,np.info查看函数docstring,np.where获取满足条件的数组下标,np.all和np.any检查所有或任何元素满足条件,np.allclose比较浮点数数组的近似相等,np.argsort获取排序后的索引,np.isneginf和np.isposinf检查负正无穷大,np.polyfit执行线性回归,np.rint四舍五入到最近整数,np.nanmean等处理NaN值的函数,以及np.clip限制数组值范围。这些函数能提升Python编程效率,尤其在科学计算和数据分析中。
摘要由CSDN通过智能技术生成

本文主要介绍了Python入门到精通-20个非常有用的Numpy函数,通过具体的内容展现,希望对大家Python语言的学习有所帮助。

Python入门到精通-20个非常有用的Numpy函数

以下这些函数并不常见,甚至你可能都没听说过,但是在有些时候它们真的很有用。

np.full_like

我敢打赌,你肯定使用过像ones_like 或 zeros_like 这样的常见 NumPy 函数。 full_like 和这两个完全一样,除了你可以创建一个与另一个矩阵具有相同形状的矩阵但是这些矩阵是使用自定义值填充的。

array = np.array([[1, 4, 6, 8], [9, 4, 4, 4], [2, 7, 2, 3]])

array_w_inf = np.full_like(array, fill_value=np.pi, dtype=np.float32)

array_w_inf

array([[3.1415927, 3.1415927, 3.1415927, 3.1415927],

[3.1415927, 3.1415927, 3.1415927, 3.1415927],

[3.1415927, 3.1415927, 3.1415927, 3.1415927]], dtype=float32)

在这里,我们正在创建一个数组值都是pi 矩阵。

np.logspace

我相信你经常使用linspace。它可以在一个区间内创建自定义的线性间隔数据点数量。它的同类logspace在这方面做得更深入一些。它可以在对数尺度上生成均匀间隔的自定义点数。你可以选择任何一个数作为基数,只要它是非零的:

log_array = np.logspace(start=1, stop=100, num=15, base=np.e)

log_array

array([2.71828183e+00, 3.20167238e+03, 3.77102401e+06, 4.44162312e+09,

5.23147450e+12, 6.16178472e+15, 7.25753148e+18, 8.54813429e+21,

1.00682443e+25, 1.18586746e+28, 1.39674961e+31, 1.64513282e+34,

1.93768588e+37, 2.28226349e+40, 2.68811714e+43])

np.meshgrid

这是只有在文档中才能看到的函数之一。因为大部分人难理解它。可以使用meshgrid从给定的X和Y数组创建每个可能的坐标对。最后,如果你的时间不是很紧张,并且又想快速的python提高,最重要的是不怕吃苦,建议你可以架微♥信:2028979958 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~
这里有一个简单的例子:

x = [1, 2, 3, 4]

y = [3, 5, 6, 8]

xx, yy = np.meshgrid(x, y)

xx

array([[1, 2, 3, 4],

[1, 2, 3, 4],

[1, 2, 3, 4],

[1, 2, 3, 4]])

yy

array([[3, 3, 3, 3],

[5, 5, 5, 5],

[6, 6, 6, 6],

[8, 8, 8, 8]])

得到 16 个唯一坐标对,结果数组中的每个索引到索引元素对对应一个。可视化一下就很好理解了

plt.plot(xx, yy, linestyle=“none”, marker=“o”, color=“red”);

Python入门到精通-20个非常有用的Numpy函数

meshgrid通常用于使用循环需要很长时间的复杂任务。如绘制三维正弦函数等高线图就是一个例子:

def sinus2d(x, y):

return np.sin(x) + np.sin(y)

xx, yy = np.meshgrid(np.linspace(0, 2 * np.pi, 100), np.linspace(0, 2 * np.pi, 100))

z = sinus2d(xx, yy) # Create the image on this grid

import matplotlib.pyplot as plt

plt.imshow(z, origin=“lower”, interpolation=“none”)

plt.show()

Python入门到精通-20个非常有用的Numpy函数

np.triu / np.tril

与ones_like或zeros_like类似,这两个函数在矩阵的某个对角线上方或下方返回0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值