在Matlab中,函数M-文件里,“[m,n]=size(x);if m==1 m=n;”什么意思

function [mean,stdev]=stat(x)
[m,n]=size(x);
if m==1
m=n;
end
mean=sum(x)/m; stdev=sqrt(sum(x.^2/m-mean.^2);

第1个回答  2014-04-06
判断矩阵或者数组X,如果X是只有1行n列,就令m=n;
size函数计算矩阵X的行数和列数,可以help size这个函数,返回值的第一个代表行数,第二个代表列数追问

我明白了。 如果x不是数组或1*n的矩阵呢,那这个函数下面计算平均数和均方差的算法,就不能用了吧?

第2个回答  2020-05-12
[m,n]=size(x)这个函数的功能是返回x矩阵的行数和列数(m:行数,n:列数)。
此处程序的意思时,如果m=1,则x为行向量,此时再把列数值n(元素总个数)赋给m,所以此时m的值就是x向量的元素总个数,一边进行以下程序对x向量的处理。
第3个回答  2014-04-06
判断 如果是m=1 那么 让m和n一样追问

[m,n]=size(x) 那这句呢?

相似回答