将方阵分成对
我有一个大方阵 12128 x 12128
。示例
A B C D E
A 0.5 0.4 0.1 0.02 0.4
B 0.1 0.3 0.07 0.03 0.9
C 0.8 0.04 0.5 0.4 0.4
D 3.4 5.6 9.5 2 2.1
E 0.6 9.1 0.3 0.5 1.2
我有一个对列表 (# 18000),它们存在于矩阵中所有可能的对中,
A B
B E
C E
我只需要矩阵中列表中对的值。有没有比分解整个矩阵(melt(matrix)
)更简单的方法?谢谢
I have a large square matrix 12128 x 12128
. Example
A B C D E
A 0.5 0.4 0.1 0.02 0.4
B 0.1 0.3 0.07 0.03 0.9
C 0.8 0.04 0.5 0.4 0.4
D 3.4 5.6 9.5 2 2.1
E 0.6 9.1 0.3 0.5 1.2
I have a list of pairs (# 18000), which exist in all the possible pairs from the matrix
A B
B E
C E
I need the values for only the pairs in my list from the matrix. Is there a easier way to do it rather than breaking down the whole matrix (melt(matrix)
)? Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用另一篇文章中的
m
和ind
作为测试数据试试这个:编辑:
如果行和列名称可以有重复(如后面的评论中所建议的)并且如果我们想要其中的所有可能值,然后尝试以下操作:
Using
m
andind
from the other post as test data try this:EDIT:
If the row and column names can have duplicates (as suggested in a later comment) and if we want all possible values from these then try this:
我对此方法的性能特征不做任何承诺,因为您的实际数据相当大,但这至少可以为您提供使用所需的工具:
I make no promises about the performance characteristics of this method, since you actual data is fairly large, but this may at least give you the necessary tools to work with: