【问题标题】:Why does the nanmean function error when running an example from the documentation?运行文档中的示例时,为什么 nanmean 函数会出错?
【发布时间】:2019-04-05 07:16:32
【问题描述】:

我正在尝试使用 MATLAB 中的 nanmean 函数计算忽略 NaN 值的矩阵的平均值。但是,当我测试从MATLAB documentation 复制的代码时,MATLAB 会抛出一个错误:

Error using sum
Invalid option. Option must be 'double', 'native', 'default', 'omitnan' or 'includenan'.

Error in mean (line 111)
        m = sum(x, dim, flag, 'omitnan');

Error in nanmean (line 17)
y = mean(varargin{:},'omitnan');

这真是令人困惑。为什么我在使用 MATLAB 文档中的代码后会看到错误?

下面列出了产​​生此错误的“官方”代码:

X = reshape(1:30,[2 5 3]);
X([10:12 25]) = NaN
y = nanmean(X,'all')

我使用的是 MATLAB R2017a 版本。

【问题讨论】:

    标签: matlab nan mean


    【解决方案1】:

    'all' 选项是在最新的 MATLAB 版本 R2018b 中引入的。您使用的是没有此功能的旧版本。

    相反,将矩阵重塑为一列:

    y = nanmean(X(:))
    

    如果您拥有 MATLAB 许可证,则可以在此处访问您的 MATLAB 版本的文档:https://www.mathworks.com/help/releases/R2017a/matlab/functionlist.html

    您还可以通过在 MATLAB 中键入 doc nanmean 来访问函数的文档。然后,您总能看到与您使用的 MATLAB 版本相对应的文档。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-20
      • 2012-01-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多