网站建设资讯

NEWS

网站建设资讯

MATLAB中tabulate和intersect函数怎么用

这篇文章主要为大家展示了“MATLAB中tabulate和intersect函数怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“MATLAB中tabulate和intersect函数怎么用”这篇文章吧。

创新互联是专业的镇宁网站建设公司,镇宁接单;提供成都网站设计、网站制作、外贸营销网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行镇宁网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

统计一个向量中各元素出现的次数及频率

1. 函数:tabulate

2. 用法:table= tabulate(x)

其中x是一个向量(行,列都行),返回的table有3列,第一列是向量x中的所有不重复的元素,第二列是第一列中各元素出现的次数,第三列是第一列中各元素出现的频率。

3. 例

>> x = [1 2 3 1 5 6 3 2 4 2 3 1];
>> table = tabulate(x)

table =

            1            3           25
            2            3           25
            3            3           25
            4            1       8.3333
            5            1       8.3333
            6            1       8.3333

>> 

另外:

还有两个自带的函数叫histcount / histcounts2可以用来统计个数,不过它是用来统计落在某区间的数值的个数,这里就不具体介绍了。

MATLAB中tabulate和intersect函数怎么用

如何判断一个集合是另一个集合的子集

MATLAB中tabulate和intersect函数怎么用这我没找到一个现成的自带的函数,不过可以用一个自带的函数,再加一个if语句来实现。

1. 相关函数:intersect

2. 用法:C = intersect(A, B) 

其中A和B是两个向量,返回的C是A和B的交集。

3. 例

>> intersect([1 2 3], [1 3 5 6 9])

ans =

     1     3

>> intersect([2 3 6], [1 3 5 6 9 2])

ans =

     2     3     6

>> 

如果我想判断A是否为B的子集,那么A的元素个数肯定是要小于等于B的元素个数,如果C的元素个数等于A的元素的个数,那么A肯定就是B的子集了。(A和B的交集的元素个数和A的个数一样,A就是B的子集)

% 想判断A是否为B的子集
% 假设经过前面的处理,A的元素一定比B少,现在就像知道A中的元素是否全在B中

co = intersect(A, B); % 公共部分
if length(co)==length(A)
    disp('A 是 B 的子集');
else
    disp('A 不是 B 的子集');
end

另外:

其实还有个函数也能用:C=ismember(A, B),它可以接受两个向量A,B作为参数,判断A向量中的各元素是否在B向量中,最后返回的C是一个逻辑向量,C的长度等于A的长度。可以对这个返回值C求和,判断这个和是否等于A向量元素的个数,如果相等,那么A向量就是B向量的子集。就不具体介绍了

以上是“MATLAB中tabulate和intersect函数怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


本文标题:MATLAB中tabulate和intersect函数怎么用
路径分享:http://cdweb.net/article/jgodeh.html