在Python中等价于Matlab中的“ismember”?

2024-09-28 20:16:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图比较两个矩阵a和B的行,它们的列数相同。在

在matlab中,ismember(a, b, 'rows')命令返回一个包含1的向量,其中a的行也是B的行,否则为0,并为a中属于B的每个元素返回B中的最高索引

[tf, index] = ismember(A, B, 'rows');

python中是否有一个等价的函数?有什么办法吗?在


Tags: 函数命令元素indextf矩阵向量rows
1条回答
网友
1楼 · 发布于 2024-09-28 20:16:22

你可以得到你的向量

same_rows = [a == b for a,b in zip(A, B)]

注意,这将产生True和{},而不是1和0,但是bool是从{}和{}和{}的子类。在

要获取发生这种情况的max行,可以使用

^{pr2}$

如果您想知道它们共有的行数,可以使用

same_count == sum(same_rows)

注意,这是python的全部内容,并假设矩阵是列表或元组的列表或列表或元组的元组。好吧。在

相关问题 更多 >