博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python之NumPy实践之数组和矢量计算
阅读量:5926 次
发布时间:2019-06-19

本文共 1244 字,大约阅读时间需要 4 分钟。

Python之NumPy实践之数组和矢量计算

1. NumPy(Numerical Python)是高性能科学技术和数据分析的基础包。

2. NumPy的ndarray:一种对位数组对象。NumPy最重要的一个特点是其N维数组对象(即ndarray),该对象是是一个快速而灵活的大数据集容器。

3. 创建ndarray

data1 = [1,2.4,4,3,0]    arr1 = np.array(data1)    除np.array可以创建新数组之外,zeros和ones分别可以创建指定长度或形状的全0或全1数组。empty可以创建一个没有任何具体值的数组。

4. arrage是Python内置函数range的数组版。

5. eye、identity 创建一个正方N x N单位矩阵(对角线为1,其余为0)

6. NumPy主要数据类型:浮点型、复数、整数、布尔值、字符串还有普通的Python对象。

7. 数组和标量之间的计算:数组可以代替循环对数据执行批量操作。这通常称为矢量化(Vectorization)。

8. 不同大小的数组之间的运算叫做广播。

9. 基本的索引和切片

索引:NumPy数组的索引是一个内容丰富的主题,因为选取数据子集或者单个元素的方式有很多。    切片:跟列表最重要的区别在于,数组切片是原始数组的视图。

10. 切片索引:切片是沿着一个轴向选取元素的,可以一次传入多个切片,就像传入多个索引那样。

11. 花式索引(Fancy indexing)是NumPy术语,它指的是利用整数数组进行索引。

12. 数组装置和轴对换:

转置(transpose)是重塑的一种特殊形式,它返回的是源数据的视图(不会进行任何复制操作)。    对于高维数组,transpose需要得到一个由轴编号组成的元组才能对这些轴进行转置。

13. 通用函数:快速的元素级数组函数。通用函数(即ufunc)是一种对ndarray中的数据执行元素级运算的函数。

14. 利用数组进行数据处理

NumPy数组使得可以将许多数据处理任务表述为简洁的数组表达式。用数组表达式代替循环的做法,通常被称为矢量化。

15. 将条件逻辑表述为数组运算:numpy.where函数是三元表达式x if condition else y 的矢量版本。

16. 排序

NumPy数组也可以通过sort方法就地排序,多维数组可以在任何一个轴向上进行排序,只需将轴编号传给sort即可.    顶级方法np.sort返回的是数组的已排序副本,而就地排序则会修改数组本身。

17. 用数组的文件进行输入输出

将数组以二进制格式保存到磁盘:np.save和np.load    存取文本文件:pandas中的read_csv和read_table函数;np.loadtxt或np.genfromtxt

转载于:https://www.cnblogs.com/lanzhi/p/6467856.html

你可能感兴趣的文章
MongoDB: 1. Database
查看>>
使用VBS脚本实现的Hosts文件一键配置
查看>>
ATOM插件activate-power-mode体验笔记
查看>>
socket 和 http
查看>>
九、redis高可用
查看>>
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
查看>>
限制Textarea字数并实时显示输入字数统计
查看>>
RPC OVER HTTPS
查看>>
linux的top命令参数详解
查看>>
净空法师:人到这个世间来干什么?做人的意义究竟在哪里?
查看>>
洪泛和广播的区别
查看>>
思科IOS软件命名规则
查看>>
Windows Update的自动更新被关闭了,并且更改按钮是灰色无法更改设置
查看>>
Debian kali2 操作系统Segmentation fault
查看>>
oracle中Where子句顺序是否对SQL性能有影响
查看>>
开源邮件服务器
查看>>
# 180111php编译错误
查看>>
Char类型
查看>>
EIGRP 查看邻居命令详解
查看>>
我的友情链接
查看>>