numpy 多元运算函数
程序员文章站
2024-03-21 11:35:40
...
多元运算函数
导包import numpy as np
二元运算函数
传两个参数的函数
arr1=np.arange(10).reshape((2,5))
arr2=np.arange(10,20).reshape((2,5))
print(arr1)
print(arr2)
print('add')
相加函数
print(np.add(arr1,arr2))
print('subtract')
相减函数
print(np.subtract(arr1,arr2))
print('divide')
相除函数
print(np.divide(arr1,arr2))
print('floor_divide')
相除函数取整数
print(np.floor_divide(arr1,arr2))
print('mod')
相除取余
print(np.mod(arr1,arr2))
print('multiply')
相乘
print(np.multiply(arr1,arr2))
三元运算函数
传三个参数的函数
arr1=np.random.uniform(0,20,(2,5))
arr2=np.arange(10,20).reshape((2,5))
print(arr1)
print(arr2)
print('#############')
如果arr2数组中的元素能被2整除,输出arr2的元素,如果不是,输出默认值100
print(np.where(arr2%2==0,arr2,100))
如果arr1中的元素大于arr2,输出arr1的元素,如果不是输出arr2的元素,即两个数组中的最大值
print(np.where(arr1>arr2,arr1,arr2))
list1=arr1.tolist()
list2=arr2.tolist()
print('###################')
把arr1和arr2的行进行比较,如果arr1中的行元素大于arr2中的行元素,输出较大的行元素
这里注意取出的x,y是行元素列表,比较的方法是两个列表第一个元素的大小比较,输出较大的哪个
print([x if x>y else y for x,y in zip(list1,list2)])
arr3=np.random.uniform(10,50,(3,4))
print('################')
print(arr3)
arr4=np.rint(arr3)
arr3四舍五入后如果其中的元素大于20小于30,输出默认值100,否则输出arr3的元素
print(np.where((arr4>20)&(arr4<30),100,arr3))