Numpy
精通面向数组编程和思维方式是成为Python科学计算大牛的一大关键步骤。——《利用Python进行数据分析》
Numpy(Numerical Python)是Python科学计算的基础包。具有以下功能:
快速高效的多维数组对象ndarray
ndarray表示的是N维数组对象。
ndarray是一个通用的同构数据多维容器,也就是说,其中的元素必须都是相同类型的。
每个数组里面都有一个shape和一个dtype
shape表示各个维度大小的元组
dtype表示数组数据类型
除非是显示的设置dtype,否则np.array会尝试推断出数组的数据类型
用于对数组执行元素级别计算以及直接对数组执行数学运算的函数
用于读写硬盘上基于数组的数据集的工具
线性代数运算、傅里叶变换,以及随机数生成的功能
用于将C、C++、Fortran代码集成到Python的工具
作为在算法之间传递数据的容器
Numpy数组在存储和处理数据要比内置的Python数据结构高效得多。此外,由低级语言(比如C和Fortran)编写的库可以直接操作Numpy数组中的数据,无需进行任何数据复制工作。
查看Numpy的版本
python -c "import numpy; print numpy.version.version"
1
方法
数组创建函数列表:
函数名
说明
zeros
创建指定长度或形状全为0的数组。
ones
创建指定长度或者形状全为1的数组。
empty
创建一个没有任何具体值的数组。
arange
是基于Python原版range函数改进的数组版本。
array
将输入的数据(可以是列表、元组、数组、其他的序列数组)转换为Numpy的ndarray。要是不指定dtype,那么就由该方法推断出dtype。默认直接复制数据。
asarray
将输入的数据转换为Numpy的ndarray。如果输入本身是ndarray就不进行复制操作了。
eye
创建一个N×N的单位矩阵,主对角线为1,其余为0。
identity
创建一个N×N的单位矩阵,主对角线为1,其余为0。
一元函数
函数名称
说明
abs
计算整数、浮点数或者是复数的绝对值。
fabs
计算整数、浮点数的绝对值(比abs快)。
sqrt
计算各个元素的平方根,相当于arr**0.5。
square
计算各个元素的平方,相当于arr**2。
exp
计算各个元素的指数e*。
log
自然对数。
log10
底数为10的对数。
log2
底数为2的对数。
log1p
底数为(1+x)的对数。
sign
计算各个元素的正负号:1(正数)、-1(负数)、0(零)。
ceil
计算各元素的ceiling值,即大于等于该值的最小正数。
floor
计算个元素的floor值,即小于等于该值的最大正数。
rint
将个元素四舍五入到最接近的整数,保留dtype。
modf
将数组的小数和整数部分以两个独立数组的形式返回。
isnan
返回一个表示“哪些值是NaN(这不是一个数字)”的布尔值类型。
isfinite
返回一个表示“哪些元素是有穷的(非inf,非NaN)”的布尔值数组。
isinf
返回一个表示“哪些元素是无穷的”的布尔值数组。
cos、sin、tan
三角函数。
cosh、sinh、tanh
双曲型三角函数。
arccos、arcsin、arctan
反三角函数。