栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

2.python科学计算库-Numpy

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2.python科学计算库-Numpy

科学计算库Numpy

第一行函数genfromtxt读取数据,第一个参数为文件名,该文件最好与代码放在一个文件夹下,否则要写出路径,第二个参数为分隔符,该txt文件里分隔符为“,”所以参数为“,”,第三个参数为文件内内容的类型,若为混合类型,先以str读取。

第二行打印该内容的类型,numpy里类型都为ndarray,就是矩阵。

第三行直接打印出该内容,以ndarray形式呈现,也就是矩阵。

第四行,当我们不知道一个函数咋用,就打印出该函数的帮助文档。

 第一行赋值一个矩阵给vector,里面的参数为列表(list)形式,

第三行为二维矩阵。

 shape函数可得到该矩阵为几行几列。

Numpy基础结构

 array数组里值的类型要一样,否则打印出的结果就像上面这样为小数类型、改成其他类型打印出来的结果也是一样的。

函数dtype为打印出该变量的类型。

 numpy里数组的下标同C++一样,都是以0开始。

 想取出5,10,15这三个数,即下标为0,1,2,在取的时候区间遵守左闭右开,[0:3]只取了下标为0,1,2的值。

 [:,1]表示取所有行第一列。

[:,0:2]表示取所有行第零一列。

 

 [1:3,0:2]表示取第一二行,第零一列。

 相当于一个判断,最终返回下标的bool值。

 多行多列的也是一样。

这个相当于将bool值当成下标返回原数组,当是下标是true时便返回该值。

 多行多列的也是一样。

Numpy矩阵基础

 &表示要满足&两边的条件,在上图就表示为既要等于10又要等于5.。 

  |表示只要满足|两边的条件其中一个即可,在上图就表示为等于10或5即可.。 

 上述操作为转换类型。astype函数:转换类型。

 查看最小值,最大值同理。

 上述操作为求和。其中axis=1为按行求和,=0为按列求和。

Numpy常用函数

 arange函数表示生成数,以0起始。

reshape函数转换成几行几列的矩阵。

 shape函数查看是几行几列的。

ndim函数查看是几维的。

dtype函数查看什么类型。

size函数查看有多少个元素。

 zeros函数生成几行几列的矩阵,矩阵元素全部为0,默认为小数。

ones函数同理,生成了一个三维的矩阵,并定义了类型为整数。

arange(10,30,5) 遵循左闭右开,表示生成10到30的数,步长为5。

下面小数同理。

np.random.random((2,3))表示生成2行3列的随机数,区间为-1到1。

 表示生成100个0到2*pi的数。

加减乘方的相关操作,具体看结果。

 直接A*B为点对点的乘法,而.dot()为正常的矩阵相乘,如上图有两种写法。

矩阵常用操作

 exp()函数:e的多少次方。

sqrt()函数:开根号。

 先随机生成在区间-1到1间的3行4列的矩阵,再*10,floor()函数为向下取整。

ravel()函数为将矩阵转换为向量。

shape函数又转换为6行2列的矩阵。

(a,T)为转置矩阵。

reshap(3,-1):在转化矩阵时,可以只写行,另一个参数写-1就行,系统因为你给定了行,列也就自动求出来了。

 hstack()函数将两个矩阵横向拼接。

  vstack()函数将两个矩阵纵向拼接。

 

 

 hsplit(a,3)第一个参数为待切割的变量,第二个为切割成几份,按行切割

 hsplit(a,(3,4))第二个参数为元组,表示切前三列,第四列单独切,第四列之后的又为一份,详看结果。

vsplit(a,3)第一个参数为待切割的变量,第二个为切割成几份,按列切割。

不同复制操作对比   

两个变量直接赋值 之后对一个操作之后另一个也会改变,从他们的地址可以看出。

 用view()函数赋值,虽然地址不一样,但地址所指向的值是一样的。

 copy()函数既改变了地址,又改变了值。

 argmax()函数,找矩阵的最大值的索引,axis=0代表按列查找。

 tile()函数:第二参数为要生成的行列,生成的每个值为第一参数。

sort()按行升序排序。

argsort()升序排序后的索引。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/828921.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号