码迷,mamicode.com
首页 > 其他好文 > 详细

Numpy 小结

时间:2018-12-23 23:53:21      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:ros   size   函数库   素数   帮助文档   必须   改变   imp   数学函数   

Python 真火来学习一下,先来看一个库 NumPy。NumPy是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。

1. 读取文件

numpy.genfromtxt() 用于读取 txt 文件,其中传入的参数依次为:

  1. 需要读取的 txt 文件位置,此处文件与程序位于同一目录下
  2. 分割的标记
  3. 转换类型,如果文件中既有文本类型也有数字类型,就先转成文本类型

help(numpy.genfromtxt)用于查看帮助文档:
如果不想看 API 可以启动一个程序用 help 查看指令的详细用法

 

2. 构造 ndarray

numpy.array()构造 ndarray

numpy.array()中传入数组参数,可以是一维的也可以是二维三维的。numpy 会将其转变成 ndarray 的结构。

传入的参数必须是同一结构,不是同一结构将发生转换。

均为 int 类型

转为浮点数类型

转为字符类型

利用 .shape 查看结构

能够了解 array 的结构,debug 时通过查看结构能够更好地了解程序运行的过程。

 

利用 dtype 查看类型

 

 

ndim 查看维度

一维

二维

 

size 查看元素数量

 

 

3. 获取与计算

numpy 能使用切片获取数据

 

 

根据条件获取

numpy 能够依次比较 vector 和元素之间是否相同

根据返回值获取元素

进行运算之后获取

 

 

类型转换

将整体类型进行转换

 

求和

sum() 能够对 ndarray 进行各种求和操作,比如分别按行按列进行求和

sum(1) 是 sum(axis=1)) 的缩写,1表示按照 x轴方向求和,0表示按照y轴方向求和

4. 常用函数

reshape

生成从 0-14 的 15 个数字,使用 reshape(3,5) 将其构造成一个三行五列的 array。

 

zeros

生成指定结构的默认为 0. 的 array

 

ones

生成一个三维的 array,通过 dtype 指定类型

 

range

指定范围和数值间的间隔生成 array,注意范围包左不包右

 

random 随机数

生成指定结构的随机数,可以用于生成随机权重

 

5. ndarray 运算

元素之间依次相减相减

乘方

开根号

e 求方

向下取整

行列变换

变换结构

 

6. 矩阵运算

矩阵之间的运算

对应位置一次相乘

矩阵乘法

横向相加

纵向相加

矩阵分割

 

7. 复制的区别

地址复制

通过 b = a 复制 a 的值,b 与 a 指向同一地址,改变 b 同时也改变 a。

 

复制值

通过 a.view() 仅复制值,当对 c 值进行改变会改变 a 的对应的值,而改变 c 的 shape 不改变 a 的 shape

 

完整拷贝

a.copy() 进行的完整的拷贝,产生一份完全相同的独立的复制

Numpy 小结

标签:ros   size   函数库   素数   帮助文档   必须   改变   imp   数学函数   

原文地址:https://www.cnblogs.com/ExMan/p/10165853.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!