当前位置: 代码迷 >> 综合 >> 数组的ufunc广播机制
  详细解决方案

数组的ufunc广播机制

热度:11   发布时间:2024-01-19 10:39:40.0
  • 通用函数,能够对array中所有元素进行操作的函数
  • Broadcating指对不同形状的array之间执行算术的方式 
  • 不同形状的数组运算时,Numpy则会执行广播机制
  • numpy能够运用向量化运算处理整个数组,所以速度比较快
    np.add(arr1,arr2)
    np.subtract(arr1,arr2)
    np.divide(arr1,arr2)
    np.multiply(arr1,arr2)np.pow(arr2,3)
    np.unique(arr)
    test=[2,4,6]
    np.inld(arr,test)  # 元素是否在arr中arr1==arr2
    np.equal(arr1,arr2)
    arr1>arr2
    np.greater(arr1,arr2)np.greater(arr1,arr2).any()  # 有一个满足就返回True
    np.greater(arr1,arr2).all()  # 所有满足才返回Truenp.isnan(arr)

arr1=np.array([[1,2,3],[2,3,4],[3,4,5]])
arr2=np.array([[1,1,1],[2,2,2],[3,3,3]])
arr1+arr2
# array([[2, 3, 4],[4, 5, 6],[6, 7, 8]])
arr3=np.array([1,2,3])
arr1+arr3
# array([[2, 4, 6],[3, 5, 7],[4, 6, 8]])