Numpy基础命令速查表

Numpy基础命令速查表

概览

创建数组

打印数组

基本运算

形状操作

索引、切片和迭代

线性代数运算

一、概览

数组的维度和数组的秩 数组的维度减去数组的秩等于数组的自由变量的个数

ndarray.ndim #数组的秩,数组的轴的个数

ndarray.shape #数组的维度

ndarray.size #数组的元素的个数

ndarray.dtype #一个用来描述数组中元素类型的对象

ndarray.itemsize #数组中每个元素的字节大小

二、创建数组

np.array([1,2,3])

np.array([[1,2,3],[4,5,6]],dtype=complex) #创建时指定数据类型

np.zeros((3,4)) #创建全为0的数组

np.ones((2,3,4),dtype=int16) #创建全为1的数组

np.empty((2,3)) #创建一个数列。。。

array, zeros, zeros_like, ones, ones_like, empty, empty_like, arange, linspace, rand, randn, fromfunction, fromfile参考:NumPy示例

三、打印数组

当你打印一个数组,NumPy以类似嵌套列表的形式显示它,但是呈以下布局:

最后的轴从左到右打印

次后的轴从顶向下打印

剩下的轴从顶向下打印,每个切片通过一个空行与下一个隔开

一维数组被打印成行,二维数组成矩阵,三维数组成矩阵列表。

四、基本运算

数组的算术运算是按对应元素的。新的数组被创建并且被结果填充

1.单个数组和标量之间的运算

a*3 #加、减、乘、除都会与每个位置上的元素进行计算

2.对单个数组的元素进行运算

  • abs 计算绝对值
  • sqrt 计算各元素的平方根
  • square 计算各元素的平方
  • exp 计算各元素的以e为底的指数
  • log/log10/log2/log1p log1p是log(1+x)
  • sign 计算各元素的正负号
  • ceil 计算大于等于该元素的最小整数
  • floor 计算小于等于该元素的最大整数
  • rint 将该元素四舍五入到最接近的整数
  • modf 返回该元素的小数和整数部分,以两个独立数组的形式
  • isnan is not a number 判断各元素是否是数字
  • isfinite isinf 判断各元素有穷无穷
  • cos/sin/tan
  • arccos/acccosh/arcsin

3.两个数组之间的运算

a+b a*b 加、减、乘、除都是两个数组对应位置元素的运算

  • add 将数组中元素相加
  • subtract 第一个数组中元素减去第二个数组中元素
  • multiply 数组对应元素相乘
  • divide floor_divide 除法、丢弃余数的除法
  • power(a,b) 将a中元素计算b中对应元素 a的b次方
  • mod 求除法的余数
  • copysign 将第二个数组中的元素符号赋值给第一个数组中的值
  • < >= <= == != 比较对应元素的值

  • logical_and/logical_or/logical_xor

五、形状操作

1.单一数组的形状操作

a.ravel() #使数组变平,变成一维数组
a.transpose() #数组的转置,但是并不会把装置的结果赋值给a
a.resize(()) #可以指定合适的任意的维度

2.数组间的形状操作

vstack((a,b)) #将两个数组沿着垂直方向拼接
hstack((a,b)) #将两个数组沿着水平方向拼接

3.将一个数组分割成几个小组

hsplit(a,3) #沿着水平方向分割
vsplit() #沿着列方向分割

六、索引、切片和迭代

因为需要具体代码解释,索引和切片参考 利用Python进行数据分析——Numpy基础:数组和矢量计算

七、线性代数运算

注:转置 arr.T

np.dot(arr1,arr2) 两个矩阵的乘积

np.diag 返回对角线元素/或以一维数组转化为以此为对角线的方阵

trace() 计算对角线的和

det 计算f方阵的行列式值

eig 计算特征值和特征向量

inv 计算逆矩阵

pinv 计算伪逆矩阵

qr 计算QR分解

svd 计算奇异值分解

solve 解线性方程Ax=b

lstsq 计算Ax=b的最小二乘解

posted @ 2018-06-20 14:17  nadech  阅读(1252)  评论(0编辑  收藏  举报