我刚接触Eigen,在C++方面的经验有限。我有一个稀疏格式的文件(就像在LIBSVM中),我想使用Eigen将数据加载到矩阵中。有人能告诉我怎么做吗?如果你能分享你的代码,这将是非常有帮助的。
因此,该文件的内容如下:
1:13 4:56 9:1
2:45 3:12 5:12 7:2
我想使用Eigen将其加载到矩阵中。
发布于 2013-08-27 06:10:30
您可以使用我们的loadMarket函数作为示例。市场格式如下所示:
%%MatrixMarket matrix coordinate real general
rows cols nnz
1 1 13
1 4 56
1 9 1
2 2 45
2 3 12
2 5 12
2 7 2将行、列和nnz替换为实际的行数、列数和非零数。
基本上,最简单的方法是填充一个三元组(i,j,value)的std::vector,然后调用SparseMatrix::setFromTriplets来创建稀疏矩阵。
另一种方法是编写一个简单的脚本,将您的格式转换为市场格式,并调用特征的loadMarket函数。
https://stackoverflow.com/questions/18449471
复制相似问题