本文作为numpy系列的总结篇,继续介绍numpy中常见的使用小贴士

1 手动转换矩阵规格

转换矩阵规格,就是在保持原矩阵的元素数量和内容不变的情况下,改变原矩阵的行列数目。比如,在得到一个5x4的矩阵后,出于某种要求,需要将其转成大小为10x2的矩阵,这时就可以利用内置方法实现此功能。

浅谈python的第三方库——numpy(终)-LMLPHP

上图中,使用方法reshape将一个4x3的矩阵转换为一个2x6的矩阵。需要注意的是,转换后的矩阵与原矩阵在元素顺序的排列上具有某种一致性,即将矩阵的元素逐行排列成一个列表,则两矩阵对应的列表是相同的。

reshape的特别参数:
浅谈python的第三方库——numpy(终)-LMLPHP

若使用reshape(-1,1),则会将含有n个元素的矩阵转成一个n行1列的列向量形式。

2 快捷生成多维数组

在熟悉某些方法之初或是在代码调试阶段,通常会需要快速生成一些变量以作示例,若需要用到numpy中的矩阵或多维数组,则可以参照下图示例:

浅谈python的第三方库——numpy(终)-LMLPHP

例中,先通过方法arange生成所需元素数目的一维数组,再通过前面介绍的reshape方法将其转成指定规格的矩阵。

系列总结

关于python的numpy库,笔者就介绍这么些,诚然这些只是numpy的冰山一角,其中还有许多有意思的方法与函数等待诸位去发现。

致歉声明

由于笔者也是一边学习,一边撰写博文,其中难免出现知识性的错误。在编辑numpy系列的最后一篇文章即本文时,笔者发现numpy中真正的矩阵其实是不同于前几期博文中笔者笔下的“多维数组”,严格来说,几乎笔者numpy系列文章的所有矩阵词眼,其实是numpy的多维数组的概念。不好意思给诸位带来误解。

虽说矩阵与多维数组相似,但在numpy中还是有明显区别的,具体细节读者可以参考以下这篇文章:
https://www.cnblogs.com/wenshinlee/p/11694885.html

05-01 03:26