zanjero 发表于 2006-12-22 15:54

帮忙检查一行代码,谢谢

Qo,Qc为1列n行的序列,欲求DC为(1x1)的矩阵
DC=1-E(qc(i)-qo(i))^2/E(qo(i)-mean(qo))^2
其中E为求和-_-
dc=1-sum((qc-qo).^2)/sum(qo-mean(qo))^2
上面这样写不对,请帮改一下

ps:qo(i)-mean(qo)就是距平吧,matlab中有没有这样的函数呢

dy123 发表于 2006-12-23 09:50

看看我做的

>> qc=';
>> qo=';
>> d=1-sum((qc-qo).^2)/sum((qo-mean(qo)).^2)

d =

-12.5000

lxq 发表于 2006-12-23 10:51

不太明白是用于哪方面的?

zanjero 发表于 2006-12-23 16:24

谢谢dy123
原帖由 lxq 于 2006-12-23 10:51 发表
不太明白是用于哪方面的?
呵呵,专业比较冷门,水文上算效率系数的

zanjero 发表于 2006-12-23 16:45

假设qc,qo都有5列,下面的代码怎么简化啊?
for i=1:5
mean_qo=mean(qo(:,i))
d(i)=1-sum((qc-qo).^2)/sum((qo-mean_qo).^2)
next
页: [1]
查看完整版本: 帮忙检查一行代码,谢谢