【问题标题】:ILNumerics equivalent of MatLab/Octave statementILNumerics 等效于 MatLab/Octave 语句
【发布时间】:2015-01-20 06:20:06
【问题描述】:

问题

在MatLab/Octave,我有声明x(isnan(x)) = 0。我将把它移植到C# 中的ILNumerics。我无法找到与上述MatLab/Octave 语句等效的ILNumerics。

在我们的例子中,x 是一个 2x2 数组。

我们尝试过的

  1. noNaNDataValues = dataValues[ILMath.isnan(dataValues)] = 0.0; 其中dataValues 是ILArray<double>
  2. 我们使用了标准的C# for 循环,效果很好。但考虑到我们已经投入了多少资金,我们更愿意使用 ILNumerics。

【问题讨论】:

  • x[isnan(x)] = 0 有什么问题?

标签: c# matlab octave nan ilnumerics


【解决方案1】:

随便用

x[isnan(x)] = 0;

这直接等同于 Matlabs 语法。您的第一次尝试表明您想将非 NaN 值与 NaN 分开?如果是这样,请澄清。

【讨论】:

  • 我们犯了一个愚蠢的错误。从我们尝试修复它的第一件事中删除noNaNDataValues = ...。最初的错误是尝试不访问已处置的对象时引发的异常。 {"Cannot access a disposed object.\r\nObject name: 'The storage is disposed already. Make sure to follow the ILNumerics documentation at http://ilnumerics.net/GeneralRules.html'."}
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-24
  • 1970-01-01
  • 1970-01-01
  • 2016-09-19
  • 2017-09-03
相关资源
最近更新 更多