如何与matlab中的行进行比较
我有一个与此类似的矩阵:
1468 1468
1468 1711
1468 1469
1711 1468
1711 1711
1711 1469
1469 1468
1469 1711
1469 1469
并且我想删除条目 (i,j) iff 条目 (j,i) 存在。例如,我想删除 1711 1468
,因为 1468 1711
出现在其上方。
我该怎么做?
I have a matrix similar to this one:
1468 1468
1468 1711
1468 1469
1711 1468
1711 1711
1711 1469
1469 1468
1469 1711
1469 1469
and I would like to remove the entry (i,j) iff the entry (j,i) exists. For example, I would like to remove 1711 1468
as 1468 1711
appears above it.
How do I do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
假设删除行的顺序并不重要,您可以组合 SORT 和 UNIQUE 像这样:
请注意
unique
将保留最后一个重复条目,这似乎符合您的要求。Assuming that the order doesn't matter for removing rows, you can combine SORT and UNIQUE like this:
Note that
unique
will retain the last of the duplicate entries, which seems to fit with your requirements.我认为根据问题的性质,顺序是无关紧要的。然后您可以将较小的数字存储在第一列中并查找重复的行。 这个问题对此有一些建议。此行将执行该排序,因此引用的方法将起作用:
I assume by the nature of the problem that order is irrelevant. Then you could just store the smaller number in the first column and look for duplicate rows. This question has some suggestions for that. This line will perform that sort so the referenced methods will work: