Matlab:百分比计算和绘图

时间:2014-04-07 07:03:46

标签: matlab

我有一个文本文件(values.txt),其中包含不同的值:

100
334
400
500
245
254
1448
1448
600
1448
1448

现在我想计算每个值的百分比并在matlab中绘制它。就像值1448在文本文件中出现4次一样。 matlab中哪些功能可以帮助我完成上述任务?

2 个答案:

答案 0 :(得分:2)

您可以使用hist计算每个值出现的次数。但是,由于您的数字未均匀分配,您可能需要使用histc更加努力地工作并手动定义分档的边缘。 或者,您可以使用unique来确定数据集中用作广告代码中心的唯一元素的数量。

xx = unique( vals );
nn = hist( vals, xx );
figure; bar( xx, nn ); title('counts');

答案 1 :(得分:2)

您需要找到它们出现的唯一值和次数。在Matlab count_unique函数中,您可以找到快速计算数组中唯一值实例数的方法:

[uniques,numUnique] = count_unique(arrayname); 

之后,您可以将出现值除以总数组长度。请查看详细信息here

您还可以使用Shai's answer中提到的hist