在Numpy中减去数组
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Numpy中减去数组相关的知识,希望对你有一定的参考价值。
我已将两个数组切成相应的x和y值。我想减去x值和y值。
arrayOneXValue = clusterCenters[:,0]
arrayTwoXValue = createArray[:,0]
arrayOneYValue = clusterCenters[:,1]
arrayYValue = createArray[:,1]
subtractXValues = np.subtract(arrayOneXValue, arrayTwoXValue)
subtractYValues = np.subtract(arrayOneYValue, arrayTwoXValue)
print(subtractXValues)
print(subtractYValues)
我期待看到两个数组的减去值对应于它们中的x和y值。而是我收到:
ufunc 'subtract' did not contain a loop with signature matching types
dtype('<U21') dtype('<U21') dtype('<U21')
我非常感谢有关我收到此消息的原因以及我的逻辑错误所在的任何建议。
答案
我注意到的一个可能的错误就在于:
subtractYValues = np.subtract(arrayOneYValue, arrayTwoXValue)
第二个矩阵是arrayTwoXValue而不是arrayYValue。也许它应该是:
subtractYValues = np.subtract(arrayOneYValue, arrayYValue)
此外,错误是由数组数据类型不匹配引起的。如果您发布了数组包含的示例,我可以详细说明。但是,这是一个例子。
a = np.array([1, 2])
b = np.array([1, 'a'])
c = np.subtract(a, b)
输出:TypeError:ufunc'sundract'不包含带有签名匹配类型的循环dtype('U21')dtype('U21')dtype('U21')
以上是关于在Numpy中减去数组的主要内容,如果未能解决你的问题,请参考以下文章