声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 51360|回复: 12

[综合讨论] 请问matlab中求平均值和方差的函数是什么?

[复制链接]
发表于 2007-4-8 13:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
小弟菜鸟,请问matlab中求平均值和方差的函数是什么,和使用格式?

我想把信号分解后的得到的细节系数比如cd1求他的平均值和方差,请问具体的操作方式,小弟跪谢。
回复
分享到:

使用道具 举报

发表于 2007-4-8 13:14 | 显示全部楼层
平均值 为mean。var 方差
具体的命令,用HELP 查看。
 楼主| 发表于 2007-4-8 13:41 | 显示全部楼层
我把小波分解的得到的某层系数变量保存为“1cd6”文件名,然后运行下面程序
x=load('1cd6');
v=var(x);

报错:
??? Undefined function or method 'sum' for input arguments of type 'struct'.

Error in ==> var at 82
        xbar = sum(x, dim) ./ n;

Error in ==> fangcha at 2
v=var(x);


请问如何解决?
 楼主| 发表于 2007-4-8 13:59 | 显示全部楼层
v=var(cd6);
x=mean(cd6);
得到的都是整数,如果我要保留小数点后三位应该如何改?
发表于 2007-4-8 16:09 | 显示全部楼层
原帖由 xuxu1985 于 2007-4-8 13:59 发表
v=var(cd6);
x=mean(cd6);
得到的都是整数,如果我要保留小数点后三位应该如何改?


help digits,vpa,format
 楼主| 发表于 2007-4-8 17:26 | 显示全部楼层
原帖由 eight 于 2007-4-8 16:09 发表


help digits,vpa,format



看了一下帮助文件,我改为
z=var(cd6);vpa(z,3);
还是不行.....

还有一个问题:
我把小波分解后的得到的某层系数文件(相当于一个数组),也就是一个变量另保存为xxx.mat文件,当我在其他m文件编程时想调用这个mat文件时我用s=load(xxx.mat);t=var(s);计算方差时出现错误:

??? Undefined function or method 'sum' for input arguments of type 'struct'.

Error in ==> var at 82
        xbar = sum(x, dim) ./ n;

Error in ==> aaa at 2
t=var(s);

请问是我文件保存、调入方法有错还是其他方面的错误?急求,谢谢!
发表于 2007-4-8 17:35 | 显示全部楼层
原帖由 xuxu1985 于 2007-4-8 17:26 发表



看了一下帮助文件,我改为
z=var(cd6);vpa(z,3);
还是不行.....

还有一个问题:
我把小波分解后的得到的某层系数文件(相当于一个数组),也就是一个变量另保存为xxx.mat文件,当我在其他m文件编程 ...


问题1:

  1. >> a=12.1234
  2. a =
  3.    12.1234

  4. >> digits(4)
  5. >> vpa(a)

  6. ans =

  7. 12.12


  8. >> digits(5)
  9. >> vpa(a)

  10. ans =

  11. 12.123
复制代码


问题2:


   S = LOAD(...) returns the contents of FILENAME in variable S.  If
    FILENAME is a MAT-file, S is a struct containing fields matching the
    variables retrieved
 楼主| 发表于 2007-4-8 18:28 | 显示全部楼层
我实在菜鸟.......改为以下还是不行,得到的结果还是整数.....
z=var(cd6);
digits(6)
vpa(z);

第二个问题能给我解释一下么?是不是我不该把变量保存为.mat文件?

我传几张图

[ 本帖最后由 xuxu1985 于 2007-4-8 18:31 编辑 ]

我要算的方差

我要算的方差

得到的是整数

得到的是整数

我把分解系数保存为.mat文件

我把分解系数保存为.mat文件
发表于 2007-4-8 19:49 | 显示全部楼层
原帖由 xuxu1985 于 2007-4-8 18:28 发表
我实在菜鸟.......改为以下还是不行,得到的结果还是整数.....
z=var(cd6);
digits(6)
vpa(z);

第二个问题能给我解释一下么?是不是我不该把变量保存为.mat文件?

我传几张图



它本来是整数,显示的就只能是整数

A =load('*.mat');
B = fieldnames(A);
A = A.(B{1});
 楼主| 发表于 2007-4-8 20:05 | 显示全部楼层
恩,谢谢,现在可以了,能给我解释一下这两个语句么?
B = fieldnames(A);
A = A.(B{1});
发表于 2007-4-8 20:11 | 显示全部楼层
原帖由 xuxu1985 于 2007-4-8 20:05 发表
恩,谢谢,现在可以了,能给我解释一下这两个语句么?
B = fieldnames(A);
A = A.(B{1});



A是结构体,自己调试一下就可以知道了,或者找本书看看
发表于 2009-5-4 18:44 | 显示全部楼层
学习了,谢谢楼上各位
发表于 2009-7-10 11:00 | 显示全部楼层
:loveliness: Eighet 太热心了,庆幸自己找到个好论坛~
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-22 09:57 , Processed in 0.077241 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表