Matlab 版 (精华区)

发信人: zjliu (秋天的萝卜), 信区: Matlab
标  题: [合集]关于corrcoef函数的使用
发信站: 哈工大紫丁香 (2003年07月13日21:12:17 星期天), 站内信件

发信人: bestwish (牛的惊动了国务院), 信区: Matlab
标  题: 请教高手:这是什么意思啊?
发信站: 哈工大紫丁香 (Sun Jun 29 11:15:54 2003)


使用corrcoef函数时:

a=ones(1,10);
b=a*3;
p=corrcoef(a,b);

按说b是a的3倍,应该表明b与a之间呈线性关系才对啊,也就是说它们之间的相关系数是1
才对。
可matlab中提示:

Warning: Divide by zero.
(Type "warning off MATLAB:divideByZero" to suppress this warning.)
> In D:\MATLAB6p5\toolbox\matlab\datafun\corrcoef.m (correl) at line 189
  In D:\MATLAB6p5\toolbox\matlab\datafun\corrcoef.m at line 77

ans =

   NaN   NaN
   NaN   NaN

这该怎么理解啊?? 
--

※ 来源:.哈工大紫丁香 bbs.hit.edu.cn [FROM: 202.102.144.36]
发信人: zjliu (秋天的萝卜), 信区: Matlab
标  题: Re: 请教高手:这是什么意思啊?
发信站: 哈工大紫丁香 (2003年06月29日11:19:22 星期天), 站内信件

可能是你用错了,换个形式看看
【 在 bestwish (牛的惊动了国务院) 的大作中提到: 】

: 使用corrcoef函数时:

: a=ones(1,10);
: b=a*3;
: p=corrcoef(a,b);

: 按说b是a的3倍,应该表明b与a之间呈线性关系才对啊,也就是说它们之间的相关系数是1
: 才对。
: 可matlab中提示:



--
╔═══════════════════╗
║★★★★★友谊第一  比赛第二★★★★★║
╚═══════════════════╝

※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.229.86]
发信人: hithero (英雄), 信区: Matlab
标  题: Re: 请教高手:这是什么意思啊?
发信站: 哈工大紫丁香 (2003年06月29日12:42:01 星期天), 站内信件

 相关系数是用协方差除以方差(不准确底说)。
你给的a自己底方差是0,所以有这个问题。
如果a是变化底序列,就好了。
【 在 zjliu (秋天的萝卜) 的大作中提到: 】
: 可能是你用错了,换个形式看看
: 【 在 bestwish (牛的惊动了国务院) 的大作中提到: 】
: : 使用corrcoef函数时:
: : a=ones(1,10);
: : b=a*3;
: : p=corrcoef(a,b);
: : 按说b是a的3倍,应该表明b与a之间呈线性关系才对啊,也就是说它们之间的相关系数是1
: : 才对。

--
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 218.9.123.54]
发信人: bestwish (牛的惊动了国务院), 信区: Matlab
标  题: Re: 请教高手:这是什么意思啊?
发信站: 哈工大紫丁香 (Sun Jun 29 15:01:53 2003)

我查了一下,相关系数等于协方差函数除以两个过程各自标准差的乘积。
定义是这样的,这么说来,两个过程都不能是没有变化的(譬如刚才的a、b)??

【 在 hithero 的大作中提到: 】
:  相关系数是用协方差除以方差(不准确底说)。
: 你给的a自己底方差是0,所以有这个问题。
: 如果a是变化底序列,就好了。
: 【 在 zjliu (秋天的萝卜) 的大作中提到: 】
: : 可能是你用错了,换个形式看看

--

※ 来源:.哈工大紫丁香 bbs.hit.edu.cn [FROM: 202.102.144.36]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.593毫秒