Average a cell with ignoring NaN

1 回表示 (過去 30 日間)
Ahmad Bayhaqi
Ahmad Bayhaqi 2021 年 4 月 29 日
コメント済み: Jan 2021 年 4 月 30 日
Hi all,
I want to average with ignoring the NaN. I used the script below:
Intens2 = cellfun(@(C) cellfun(@mean, C), new_table3.extData, 'uniform', 0)
and the and I do average to Intens2
Intens3=cellfun(@mean, Intens2);
Is there a way to average in Intens2 and Intens2 with ignoring NaN?
where I can put 'omitnan'?
Thank you very much,
  1 件のコメント
Jan
Jan 2021 年 4 月 29 日
Please post an example for your inputs.

サインインしてコメントする。

採用された回答

Jan
Jan 2021 年 4 月 29 日
C = {[1,2,4,6,NaN], [NaN, 2, 3, NaN]};
MC = cellfun(@(x) mean(x, 'omitnan'), C)
MC = 1×2
3.2500 2.5000
  2 件のコメント
Ahmad Bayhaqi
Ahmad Bayhaqi 2021 年 4 月 29 日
Hi @Jan, yes it works.
Thank you very much
Jan
Jan 2021 年 4 月 30 日
You are welcome. There are 3 nested cellfun calls in your code. Usually loops are faster than the nice cellfun. I'd post a loop method, if it is clear, what exactly your inputs are.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeResizing and Reshaping Matrices についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by