你还没学会Numpy?Python中的Numpy数组常用操作

玩数据分析、数据挖掘、AI的都知道这个Python库用的是很多的,里面包含各种操作,在实际的DataSet的处理当中是非常常用的。

NumPy就是Python的其中一个扩充程序库。它支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。Numpy内部解除了Python的PIL(全局解释器锁),运算效率极好,是大量机器学习框架的基础库。

如果有想学习python的程序员,可来我的python学习扣qun:835017344,免费送python的视频教程噢!我每晚上8点还会在群内直播讲解python知识,欢迎大家前来学习交流。

 

NumPy的主要特点

●ndarray,快速,节省空间的多维数组,提供数组化的算术运算和高级的广播功能。

●使用标准数学函数对整个数组的数据进行快速运算,而不需要编写循环。

●读取/写入磁盘上的阵列数据和操作存储器映像文件的工具。

●线性代数,随机数生成,以及傅里叶变换的能力。

●集成C、C++、Fortran代码的工具。

今天,我们就来和大家分享几个Numpy数组常用操作。

Numpy数组的创建

特殊矩阵的创建

np.ones() 函数与np.zeros() 函数可以创建任意维度的全1或全0数组。函数参数可按照IDE的提示来进行填写。

创建自列表

具体就是先创建具有数据的列表,然后将其转换为数组。如以下代码所示:

image

Numpy数组的切片

由于python列表是层次嵌套的,所以索引元素方法为a[i][j];而Numpy数组为一个整体,其索引方法为a[i, j]。在此基础上就可以进行切片,比如:

a[i, 0:4]表示第i行,第0到第4列(不包括第4列);

a[i, :]表示第i行;

a[-1, :]表示最后一行;

a[:-1, :]表示除最后一行的所有行;

以上方法同样可用于列。

Numpy数组的排序

将每一行或列排序

使用np.sort() 函数或数组对象本身的sort() 函数,其中np.sort() 不改变原数组对象的顺序,而是返回一个排序后的数组对象。如下代码所示:

将每一行排序

image

将每一列排序

将每一行看作整体,将所有行按照某一列的顺序进行排序

这里要提一下argsort() 函数,该函数返回数组沿指定轴排序后的索引,我们可以使用某列排序后的索引来排序所有行。

使用代码如下:

argsort()的用法

image

将所有行按第二列进行排序

Numpy数组的拼接

np.concatenate() 函数可以提供数组拼接操作,使用代码如下:

以上就是本篇的内容,希望能对你的学习之路有所帮助。



 

猜你喜欢

转载自blog.csdn.net/w17688977481/article/details/89708840