- 算术运算
- 比较 获取符合值 统计 逻辑运算
- 广播
a = np.array([1,2,3,4,5])
b = np.array([0,1,2,3,4])
nd为一个数或一维或多维数组数组,a、b为两数组
代码 | 含义 |
---|---|
1.0/a | 数组除法,倒数 |
b/a | 除法 |
a+b | 加 |
a-b | 减 |
a*b | 乘 |
2**a | 次方 a**2 |
b//a | 整除 |
-a | 取负 |
b%a | 取余 |
nd.min() | 最小值 |
nd.min(axis=0) | 二维中每列最小 |
nd.min(axis=1) | 二维中每行最小 |
np.min(nd) | 最小值 |
np.max(nd) | 最大值 |
np.maximum(nd, 5) | 与5相比返回最大值,如果nd为数组则小于5的用5填充 |
np.sqrt(nd) | 开方 |
np.power(nd,2) | 指数 |
np.sin(nd) | 三角函数 nd = np.linscape(0,np.pi,3) |
np.cos(nd) | 三角函数 |
np.abs(nd) | 绝对值 absolute(nd) 复数取绝对值则为模长 |
np.exp(nd) | 指数函数,打印e的nd次方,e是一个常数为2.71828 |
np.sum(nd) | 求和 |
np.mean(nd) | 计算平均值 nd.mean(0) (1) 多维数据不同维度均值 |
np.median(nd) | 中位数 |
np.std(nd) | 标准差 |
np.var(nd) | 方差 |
np.log(nd) | 底为e的对数,nd不能为0 |
np.log2(nd) | 底为2的对数,nd不能为0 |
np.multiply(nd, nd) | 对应元素相乘,也可乘常数,如np.multiply(nd, 2)即nd1*2,nd1/2 |
np.add(nd, nd) | 相加 |
np.subtract(nd, nd) | 相减 |
np.divide(nd, nd) | 相除 |
np.negative(nd) | 负数 |
np.floor_dicide(nd,nd) | 整除 |
np.mod(nd,nd) | 取模 |
np.dot(nd, nd) | 内积,矩阵相乘,nd为多维数组 |
np.add.reduce(a) | 各元素和 |
np.add.accumulate(a) | 计算中间结果 [1,3,6,10,15] 乘法类似 |
np.multiply.reduce(a) | 各元素乘积 |
np.multiply.outer(a,a) | 外积(矩阵相乘) |
a = np.array([1,2,3,4,5,6])
代码 | 含义 | 结果 |
---|---|---|
a>3 | 大于 | [False False False True True True] |
a==3 | 等于 | [False False True False False False] |
np.equal(a,3) | 等于 | [False False True False False False] |
np.not_equal(a,3) | 不等于 | [ True True False True True True] |
np.less(a,3) | 小于 | [ True True False False False False] |
np.less_equal(a, 3) | 小于等于 | [ True True True False False False] |
np.greater(a, 3) | 大于 | [False False False True True True] |
np.greater_equal(a, 3) | 大于等于 | [False False True True True True] |
a = np.array([[1,3,6],[3,1,5]])
代码 | 含义 | 结果 |
---|---|---|
a[a<3] | 小于3的所有值 | [1 1] |
np.count_nonzero(a<3) | a中小于3的个数 | 2 |
np.sum(a<3) | a中小于3的个数 false被解释为0 True为1 | 2 |
np.sum(a<3,axis=1) | 每行小于3的个数 | [1 1] |
np.any(a>3) | 判断a有没有大于3的,返回False True | True |
np.all(a<5) | a中所有值是否都小于5 | False |
np.bitwise_and(a>2,a<4) | & | |
np.bitwise_or(a<2,a>4) | 或 | |
np.bitwise_xor() | ^ | |
np.bitwise_not() | ~ | |
np.sum((a>2)&(a<4)) | 2到4之间的个数 | |
np.sum((a<2) | (a>4)) | 小于2或大于4的个数 |
np.sum(~((a<2) | (a>4))) | 非 |
将不同维度的数据扩充为相同维度
如[5]扩充为[5,5,5],[0,1,2]扩充为[[0,1,2],[0,1,2],[0,1,2]],[[0],[1],[2]]扩充为[[0,0,0],[1,1,1],[2,2,2]]等
import numpy as np
a = np.array([0,1,2])
b = np.array([[1,1,1],[1,1,1],[1,1,1]])
c = np.array([[0],[1],[2]])
print(a+5) # [5 6 7] 5广播为[5,5,5],相当于[0,1,2]+[5,5,5]
print(b+a) # [[1 2 3] [1 2 3] [1 2 3]] 相当于a广播为[[0,1,2],[0,1,2],[0,1,2]] 两个相加
print(c+a) # [[0 1 2] [1 2 3] [2 3 4]] a为[[0,1,2],[0,1,2][,0,1,2]] b为[[0,0,0],[1,1,1],[2,2,2]]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)