大数据分析应用关注的功能点:
1、用于数据整理和清理、子集构造和过滤、转换等快速的矢量化数组运算
2、常用的数组算法,如排序、唯一化、集合运算等
3、高效的描述统计和数据聚合/摘要运算
4、用于异构数据集的合并/连接运算的数据对其和关系型数据运算
5、将条件逻辑表述为数组表达式(而不是带有if-elif-else分支的循环)
6、数据的分组运算(聚合、转换、函数应用等)
ndarray:一种多维数组对象
每个数组都有一个shape(一个表示各维度大小的元组)和一个dtype(一个明确数组类型的对象)
创建ndarray
使用array函数创建;
zeros/ones分别可以创建指定长度或形状的全0或全1数组;
empty可以创建一个没有任何具体值的数组;
arange是range函数的数组版
数组创建函数
ndarray的数据类型
可以通过narray的astype方法转换dtype;
如果将浮点型转换成整数,则小数部分会被截断;
如果字符串数组表示的全是数字,也可以用astype将其转换成数值形式
数组和标量之间的计算
基本的索引和切片
将一个标量值赋值给一个切片时,该值会自动传播到整个选区;跟列表最重要的区别在于,数组切片是原始数组的视图,视图上的任何修改都会反映到源数组上
切片索引
切片是沿着一个轴向选取元素的;
注意,“只有冒号”表示选取整个轴
布尔型索引
要选择除某个值意外的其他值,可以使用!=,也可以使用~对条件进行否定
要选取多个关键词,可以用布尔条件,使用&、|之类的布尔算数运算符
通过布尔型索引选取数组中的数据,将总是创建数据的副本,即使返回一模一样的数组也是如此;
通过布尔型数组设置值是一种常用的手段
花式索引
指的是利用整数数组进行索引
为了以特定顺序选取行子集,只需传入一个用于指定顺序的整数列表或ndarray即可
数轴转置和轴对换
矩阵计算用的比较多
通用函数:快速的元素级数组函数
利用数组进行数据处理
将条件逻辑表述为数组运算
数学和统计方法
用于布尔型数组的方法
排序
sort方法
唯一化以及其他的集合逻辑
最常用的:np.unique
用于数组的文件输入输出
将数组以二进制格式保存到磁盘
np.save和np.load
默认情况下,数组是以未压缩的原始二进制格式保存在.npy文件中
存取文本文件
!type,np.loadtxt,np.savetxt,getfromtxt(面向的是结构化数组和缺失数据处理)