gpt4 book ai didi

c# Mathnet Numerics -- 获取非零稀疏矩阵元素的索引

转载 作者:行者123 更新时间:2023-12-03 03:14:51 25 4
gpt4 key购买 nike

我想使用 MathNet.numerics for csharp 创建自定义优化矩阵运算(基于我对正在使用的稀疏矩阵的了解的智能克罗内克产品)。

是否有一个访问器来获取稀疏矩阵的非零元素? (或索引?或其迭代器?或 CSR 表示?)

最佳答案

您可以使用 IndexedEnumerator 仅访问矩阵中的非零元素。方法签名是:

public override IEnumerable<Tuple<int, int, double>> IndexedEnumerator()

例如以下代码:

var mtx = new SparseMatrix(new DiagonalMatrix(3, 3, new[] {1.0, 1, 1}));
Console.WriteLine(mtx.NonZerosCount);

foreach (var tuple in mtx.IndexedEnumerator())
{
Console.WriteLine("({0},{1}) = {2}", tuple.Item1, tuple.Item2, tuple.Item3);
}

将产生以下输出:

3
(0,0) = 1
(1,1) = 1
(2,2) = 1

关于c# Mathnet Numerics -- 获取非零稀疏矩阵元素的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11797625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com