- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab统计 频数、频率和累积频率
matlab统计?频数、频率和累积频率
(2011-03-30 21:03:26)
function result = HistRate(x)%?? HistRate(x),统计数组 x 中的元素出现的频数、频率和累积频率,以表格形式显示在屏幕上.%?? x可以是数值型数组、字符串、字符型数组、字符串元胞数组和名义尺度数组。%%?? result = HistRate(x),返回矩阵或元胞数组result,它是多行4列的矩阵或元胞数组,%?? 四列分别对应取值、频数、频率、累积频率。当x是数值型数组时,result为矩阵;当x%?? 是字符串、字符型数组、字符串元胞数组和名义尺度数组时,result为元胞数组。%%?? 用户还可参考tabulate函数,该函数比tabulate函数的效率高。%??%?? Copyright xiezhh,2010.3.8if isnumeric(x)??? x = x(:);??? x = x(~isnan(x));??? xid = [];else??? [x,xid] = grp2idx(x);??? x = x(~isnan(x));endx = sort(x(:));??? % 排序m = length(x);x1 = diff(x);??? % 求差分x1(end + 1) = 1;x1 = find(x1);CumFreq = x1/m;value = x(x1);x1 = [0; x1];Freq1 = diff(x1);Freq2 = Freq1/m;if? nargout == 0??? if isempty(xid)??????? fmt1 = s?? %8s?? %6s??? %6s\n;??????? fmt2 = ? d???? ????? %6.2f%%???? %6.2f%%\n;??????? fprintf(1, fmt1, 取值, 频数, 频率, 累积频率);??????? fprintf(1, fmt2, [value; Freq1; 100*Freq2; 100*CumFreq]);??? else??????? head = {取值, 频数, 频率(%), 累积频率(%)};??????? [head;xid,num2cell([Freq1, 100*Freq2, 100*CumFreq])]??? endelse??? if isempty(xid)??????? result = [value Freq1 Freq2 CumFreq];??? else??????? result = [xid,num2cell([Freq1, Freq2, CumFreq])];??? endend如何统计一个数组中各数字(元素)出现的频数、频率和累积频率?这里以案例形式做一个总结。第一种方法:调用MATLAB自带的函数tabulate统计一个数组中各数字(元素)出现的频数、频率【例1】统计数值型数组中各元素出现的频数、频率。 x = [2??2??6??5??2??3??2??4??3??4??3??4??4??4??4??2??2? ?? ?6??0??4??7??2??5??8??3??1??3??2??5??3??6??2??3??5? ?? ?4??3??1??4??2??2??2??3??1??5??2??6??3??4??1??2??5]; tabulate(x(:))??Value? ? Count? ?Percent? ?? ?0? ?? ???1? ?? ?1.96%? ?? ?1? ?? ???4? ?? ?7.84%? ?? ?2? ?? ? 14? ???27.45%? ?? ?3? ?? ? 10? ???19.61%? ?? ?4? ?? ? 10? ???19.61%? ?? ?5? ?? ???6? ???11.76%? ?? ?6? ?? ???4? ?? ?7.84%? ?? ?7? ?? ???1? ?? ?1.96%? ?? ?8? ?? ???1? ?? ?1.96%复制代码【例2】统计字符串中各字符出现的频数、频率。 x = [If x is a numeric array, TABLE is a numeric matrix.]; tabulate(x)??Value? ? Count? ?Percent? ?? ?I? ?? ???1? ?? ?2.44%? ?? ?f? ?? ???1? ?? ?2.44%? ?? ?x? ?? ???2? ?? ?4.88%? ??
文档评论(0)