【Matlab笔记_20】判断一个 cell 数组中的元素在另一个 cell 数组中出现的次数

可以用strcmp 函数用于比较两个字符串是否相等,sum 函数用于计算在 cell2 中出现的次数。最终,countArray 中存储了每个元素在 cell2 中的出现次数。代码如下:

% 示例数据
cell1 = {'a', 'b', 'c', 'a', 'b', 'a'};
cell2 = {'a', 'd', 'b', 'e', 'a'};

% 初始化一个变量来存储每个元素在 cell2 中的出现次数
countArray = zeros(size(cell1));

% 遍历 cell1 中的每个元素
for i = 1:numel(cell1)
    % 检查当前元素在 cell2 中出现的次数
    countArray(i) = sum(strcmp(cell1{i}, cell2));
end

% 显示结果
disp('每个元素在 cell2 中的出现次数:');
disp(countArray);

但是如果cell数组里面是数字的话

% 示例数据
cell1 = {1, 2, 3, 1, 3, 1};
cell2 = {1, 4, 2, 5, 1};

% 初始化一个变量来存储每个数字在cell2中的出现次数
countArray = zeros(size(cell1));

% 遍历cell1中的每个元素
for i = 1:numel(cell1)
    % 检查当前元素在cell2中出现的次数
    countArray(i) = sum(cellfun(@(x) isequal(x, cell1{i}), cell2));
end

% 显示结果
disp('每个数字在cell2中的出现次数:');
disp(countArray);

其中,cellfun 函数用于对cell2中的每个元素应用一个函数。匿名函数 @(x) isequal(x, cell1{i}) 用于检查cell1{i}和cell2中的每个元素是否相等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值