温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

MATLAB中tabulate和intersect函数怎么用

发布时间:2021-12-30 17:21:26 来源:亿速云 阅读:2644 作者:小新 栏目:大数据

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

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

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函数怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI