MATLABでデータ分析などをしているとき「共通要素はなんだろう…」、「和集合は何だろう…」「AとBのデータの違いは?」などの場面はないでしょうか。そんな時に便利な関数が関数intersect / union / setdiffです。それぞれ、以下の計算をしてくれます。目的の情報を探したいときにいいですね。
- intersect:2 つのデータ セットの共通集合
- union:2 つのデータ セットの和集合
- setdiff:2 つのデータ セットの差分
※サンプルコードは文末にあります。

以下のコードでは、AとBの共通集合(C)、和集合(U)、差集合(D1とD2)を求めます。
clear
A = [3 5 7 9 11];
B = [2 3 5 8 9];
% 共通要素を取得
C = intersect(A,B)
% 和集合
U = union(A,B)
% AにあってBにない
D1 = setdiff(A,B)
% BにあってAにない
D2 = setdiff(B,A)
MATLAB / LabVIEW関連の投稿をXやYoutubeでしています。
フォローしていただけますと幸いです。
X: https://x.com/SCISEL1990
YouTube:https://www.youtube.com/@scisel
