早教吧作业答案频道 -->其他-->
matlab中 NaN会参与运算吗如果我的矩阵里有的值为NaN,当我在算所有数据的平均数Mean和方差SD时,NaN值会对最后的结果有影响吗?我希望它们被忽略,不参与运算过程,
题目详情
matlab中 NaN会参与运算吗
如果我的矩阵里有的值为NaN,当我在算所有数据的平均数Mean和方差SD时,NaN值会对最后的结果有影响吗?
我希望它们被忽略,不参与运算过程,
如果我的矩阵里有的值为NaN,当我在算所有数据的平均数Mean和方差SD时,NaN值会对最后的结果有影响吗?
我希望它们被忽略,不参与运算过程,
▼优质解答
答案和解析
会影响的.用mean求均值时,如果矩阵中含有NaN,对应列的均值就是NaN.
例:
a =
1 2 3
NaN NaN 0
ans =
NaN NaN 1.5000
以下修改能不让NaN参与计算,但不一定是最优的.
mean(a(find(isnan(a) == 0)));
ans =
1.5000
但是这样求出的是矩阵中所有非NaN元素的均值,而非矩阵每一列的均值.如果你想求矩阵每一列的均值,可以循环每一列,执行以上
[hang lie] = size(a);
for i=1:lie
mean(a(find(isnan(a(:,i)) == 0),i))
end
.至于那个求方差的var好像只对向量能用,这里就不列出,你可以参照以上试试.
例:
a =
1 2 3
NaN NaN 0
ans =
NaN NaN 1.5000
以下修改能不让NaN参与计算,但不一定是最优的.
mean(a(find(isnan(a) == 0)));
ans =
1.5000
但是这样求出的是矩阵中所有非NaN元素的均值,而非矩阵每一列的均值.如果你想求矩阵每一列的均值,可以循环每一列,执行以上
[hang lie] = size(a);
for i=1:lie
mean(a(find(isnan(a(:,i)) == 0),i))
end
.至于那个求方差的var好像只对向量能用,这里就不列出,你可以参照以上试试.
看了 matlab中 NaN会参与...的网友还看了以下:
0.7里有个0.1,不改变小数的大小,把它写成两位小数是,这时它里有个0.01. 2020-04-11 …
0.7里有个0.1,不改变小数的大小,把它写成两位小数是,这时它里有个0.01.30.07是由3个 2020-04-11 …
请问在100g的溶液A里有7g的物质B,那么多少克的溶液A里有0.3g的物质B呢?请各位哥哥姐姐帮 2020-05-13 …
半年的时间里,有623个配件,总共损坏了9个,算下半年的时间里损坏的概率是多少 2020-05-17 …
怎么学英语好?现在我读高三,高中三年我没有听过一堂完整的英语课,现在我要努力学英语,我单词老是背不 2020-05-17 …
东南亚和东亚的16个国家有没有同一时间里,有的是冬天,有的是夏天? 2020-06-04 …
博物馆上午9时开馆,到10时馆里有258人参观,1O一12时有95人离开,174人进馆.到12时, 2020-06-20 …
请问在100g的溶液A里有7g的物质B,那么多少克的溶液A里有0.3g的物质B呢?请各位哥哥姐姐帮 2020-06-26 …
锅上总有锈,用醋泡完5分钟后又有用水泡的话过几个小时锅里有一层类似蓝色的物质```````用醋泡过 2020-06-26 …
桶里有100千克油,用去十分之一后,又增加了剩下油的十分之一,这时桶里有油多少千克 2020-06-27 …