[英]How to go from a tsv with feature list strings to a csr matrix in python?
[英]Construct matrix from tsv in python
我有一个 .tsv 文件,看起来像这样:
A B C
SRX479927.bed SRX821810.bed 0.258912
SRX032890.bed SRX821809.bed 0.161135
SRX660083.bed SRX821816.bed 0.00379202
SRX821817.bed SRX821818.bed 0.0902696
SRX660084.bed SRX479928.bed 0.2671
SRX821806.bed SRX821811.bed 0.458604
SRX476926.bed SRX821806.bed 0.0303042
SRX196107.bed SRX414970.bed 0.221135
其中 A 和 B 是文件,C 是这些文件相似度的索引。 我试图在python中构造一个矩阵,A在y轴上,B在x轴上,填充相应的值。 我之前为 .tsv 文件做过 2 列(文件和值),但无法成功使用 3 列。 任何人都可以提供有关如何解决此问题的方法吗? 如果之前有人问过这个问题,我很抱歉,但我只能找到有关如何从 2 列构造矩阵的问题。
您可以将其作为数据框加载,然后将A
和B
设置为索引,进行相应排序,然后取消堆叠索引:
matrix = df.set_index(['A', 'B'])['C'].sort_index().unstack()
如果您的数据不包含相似文件的相似度分数(即,将文件与其自身进行比较),您可以手动添加它们。 如果分数是对称的并且只存在矩阵的上三角形,则可以使用numpy.triu_indices
来构建矩阵。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.