MATLAB Language
Ustaw operacje
Szukaj…
Składnia
- C = związek (A, B);
- C = przecinają się (A, B);
- C = setdiff (A, B);
- a = ismember (A, x);
Parametry
Parametr | Detale |
---|---|
A, B | zbiory, ewentualnie macierze lub wektory |
x | możliwy element zestawu |
Podstawowe operacje na zestawach
Możliwe jest wykonywanie podstawowych operacji zestawu za pomocą Matlaba. Załóżmy, że podaliśmy dwa wektory lub tablice
A = randi([0 10],1,5);
B = randi([-1 9], 1,5);
i chcemy znaleźć wszystkie elementy, które są w A
i B
Do tego możemy użyć
C = intersect(A,B);
C
będzie obejmować wszystkie liczby, które są częścią A
i częścią B
Jeśli chcemy również znaleźć pozycję tych elementów, nazywamy
[C,pos] = intersect(A,B);
pos
jest pozycją takich elementów, że C == A(pos)
.
Kolejną podstawową operacją jest połączenie dwóch zestawów
D = union(A,B);
Herby zawiera D
wszystkie elementy A
i B
Zauważ, że A
i B
są niniejszym traktowane jako zestawy, co oznacza, że nie ma znaczenia, jak często element jest częścią A
lub B
Aby to wyjaśnić, można sprawdzić połączenie D == union(D,C)
.
Jeśli chcemy uzyskać dane w „A”, ale nie w „B”, możemy skorzystać z następującej funkcji
E = setdiff(A,B);
Chcemy jeszcze raz zauważyć, że są to takie zestawy, że następująca instrukcja zawiera D == union(E,B)
.
Załóżmy, że chcemy sprawdzić, czy
x = randi([-10 10],1,1);
jest elementem A
lub B
, możemy wykonać polecenie
a = ismember(A,x);
b = ismember(B,x);
Jeśli a==1
to x
jest elementem A
a x
nie jest żadnym elementem, to a==0
. To samo dotyczy B
Jeśli a==1 && b==1
x
jest również elementem C
Jeśli a == 1 || b == 1
x
jest elementem D
a jeśli a == 1 || b == 0
to także element E