计算香农熵return arrays must be of ArrayType

吃可爱长大的小学妹 提交于 2020-03-15 20:51:41

代码在运行时会出现TypeError: return arrays must be of ArrayType的错误,因为log的第二个参数不是base而是out array。如果你只是想执行普通的log操作,可以选择使用numpy.math.log(1.1, 2)或者使用python自带的math模块的log函数,而不是导入numpy中所有的函数TT
原文链接:https://blog.csdn.net/qq_36396104/article/details/78696753

shannonEnt = sum(np.array([-p * np.math.log(p, 2) for p in probs]))

改成这个就行。不要直接np.log(p,2)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!