我有以下一组功能:
| | Sweet | Sour | Bitter | Salty | Seeds |
| Grapefruit | 1 | 1 | 1 | 0 | 1 |
| Banana | 1 | 0 | 0 | 0 | 0 |
grapefruit_features = np.array([True, True, True, False, True ])
banana_features = np.array([True, False, False, False, False])给定两个布尔数组(a和b),我需要编写一个函数来告诉我a具有b没有的特征的数量。所以说,西葫芦有香蕉没有的特性。(西葫芦香蕉)。它应该返回3。{在这种情况下(banana - grapfruit )应该返回0,因为香蕉没有葡萄干没有的特性}
我只有下面的代码,它描述了哪些功能是不相等的,我需要帮助来修复它。
def differences(a, b):
return np.sum(np.all([a != b] ,axis=0))发布于 2018-02-20 16:39:24
然后对b求和,然后求和,这就是你要找的布尔逻辑。
def differences(a, b):
return (a & ~b).sum()
In [80]: differences(grapefruit_features, banana_features)
Out[80]: 3
In [81]: differences(banana_features, grapefruit_features)
Out[81]: 0https://stackoverflow.com/questions/48880819
复制相似问题