No loop matching the specified signature and casting was found for ufunc greater

目录

报错信息

np.greater 学习

临时解决方法:np.greater去掉dtype


报错信息

pip install numpy==1.24

报错代码:

 dda= np.cumsum(np.greater(counts, 0),dtype=np.int32)
    print(dda)

No loop matching the specified signature and casting was found for ufunc greater

np.greater 学习

1. 函数功能:判断参数一是否大于参数二。

2. 参数介绍

    arr1:第一个参数类似一个数组
    arr2:第二个参数类似一个数组
    out:返回值是bool类型或者是元素为bool的数组
3. 代码案例

import numpy as np
 
arr1 = np.array(1)
arr2 = np.array(0)
bool1 = np.greater(arr1, arr2)
print(bool1)
# 输出值
# True
 
arr1 = np.array(1)
arr2 = np.array([0, 1])
bool1 = np.greater(arr1, arr2)
print(bool1)
# 输出值
# [ True False]
 
arr1 = np.array([1, 2])
arr2 = np.array([0, 1])
bool1 = np.greater(arr1, arr2)
print(bool1)

原文链接:https://blog.csdn.net/weixin_43869605/article/details/121429091

临时解决方法:np.greater去掉dtype

import numpy as np

if __name__ == '__main__':

    print(np.__version__)

    counts=np.array([1,-2])

    dda= np.cumsum(np.greater(counts, 0))
    print(dda)

结果:

1.24.0
[1 1]

np.cumsum 按维度累加函数

你可能感兴趣的:(python基础,python,numpy,开发语言)