Typy danych MATLAB: wszystko, co musisz wiedzieć
Opublikowany: 2020-09-16MATLAB zapewnia wiele sposobów przechowywania liczb i zmiennych. Wszystkie liczby są równoważne rzeczywistym liczbowym liczbom rzeczywistym. Istnieje górna granica największej liczby i dolna granica wartości bezwzględnej liczby niezerowej. Wynika to ze skończonej pamięci urządzeń przetwarzających w porównaniu z liczbą rzeczywistą, która może być nieskończona.
Ze względu na skończoną przestrzeń zmienna MATLAB nie może przechowywać liczby niewymiernej. Np. wartość pi jest zwracana do wartości aproksymacji. Zbiór wartości reprezentowanych w zmiennej MATLAB jest skończony. Typy danych w MATLAB pomogą poradzić sobie z tym ograniczeniem.
Wszystkie zmienne MATLAB należą do klasy, w której różne klasy mają różne cechy i są odpowiednie do reprezentowania różnych typów danych, niezależnie od tego, czy są to dane numeryczne, tekstowe czy złożone.
Pamiętaj: Wszystkie podane elementy w tablicy powinny być tego samego typu.
MATLAB udostępnia łącznie 16 podstawowych typów, a typy danych w MATLAB są zdefiniowane przez,
- Zdefiniowany zestaw wartości
- Zestaw operacji, którego można użyć do wykonania na tych wartościach
Źródło

Spis treści
Typy numeryczne
Typy liczbowe obejmują liczby całkowite ze znakiem i bez znaku, liczby zmiennoprzecinkowe o pojedynczej, podwójnej precyzji. Zmienne liczbowe i ich cechy wymieniono poniżej:
podwójnie | Tablice o podwójnej precyzji |
Liczby ujemne = -1,79769 x 10 308 i -2,22507 x 10 -308 Liczby dodatnie = 2,22507 x 10 -308 i 1,79769 x 10 308 |
pojedynczy | Tablice o pojedynczej precyzji |
Liczby ujemne = -1,79769 x 10 308 i -2,22507 x 10 -308 Liczby dodatnie = 2,22507 x 10 -308 i 1,79769 x 10 308 |
int8 | 8-bitowe tablice liczb całkowitych ze znakiem |
|
int16 | 16-bitowe tablice liczb całkowitych ze znakiem |
|
int32 | 32-bitowe tablice liczb całkowitych ze znakiem |
|
int64 | 64-bitowe tablice liczb całkowitych ze znakiem |
|
uint8 | 8-bitowe tablice liczb całkowitych bez znaku |
|
uint16 | 16-bitowe tablice liczb całkowitych bez znaku |
|
uint32 | 32-bitowe tablice liczb całkowitych bez znaku |
|
uint64 | 64-bitowe tablice liczb całkowitych bez znaku |
|
Przeczytaj: Pętla While w MATLAB: Wszystko, co musisz wiedzieć
Typ logiczny
Wartość prawda i fałsz jest reprezentowana przez wartości logiczne 0 i 1. Dowolną wartość liczbową (niezłożoną) można przekształcić w reprezentację logiczną.
Składnia : L = logiczne (x)
Powyższa instrukcja konwertuje x na dowolną tablicę wartości logicznych. Niezerowy element x jest konwertowany na wartość logiczną 1 (prawda), a wartość zero jest konwertowana na wartość logiczną 0 (fałsz).
Typ znaku i ciągu
Tablica znaków i ciągów MATLAB zapewnia przechowywanie danych tekstowych. Sekwencja znaków to tablica znaków porównywana z sekwencją liczb zwaną tablicą numeryczną.
Składnia : c = 'wyższy stopień'
„up grad” to sekwencja znaków tworząca tablicę ciągów. Możemy to zaobserwować również jako owinięty fragment tekstu.
Tablica komórek
Tablica komórek to typ danych MATLAB, który zawiera indeksowane pojemniki danych zwane komórkami . Komórki mogą zawierać dowolny typ danych, zwykle zawierają wektory znaków o różnej długości, liczby, tablicę liczb o dowolnej wielkości. Zestawy komórek są ujęte w (), a dostęp do komórek odbywa się za pomocą {}, który służy do tworzenia, edytowania lub usuwania dowolnych funkcji komórek.
Składnia : c = {s,m,i,l,e}
Stoły
Dane tabelaryczne lub zorientowane na kolumny wymagają tabel i są one przechowywane jako kolumny w pliku tekstowym lub arkuszu kalkulacyjnym. Zawiera zmienne wierszowe i kolumnowe. Każda zmienna może mieć różne typy danych i różne rozmiary, ale każda zmienna musi mieć taką samą liczbę wierszy.
Szereg funkcji służy do dostępu do danych w celu tworzenia, edycji i odczytu danych w tabeli.
Struktury
Nazwane pola zawierają dane o różnych typach i rozmiarach. W tym przypadku kontenery danych służą do grupowania powiązanych danych i ich typów, które nazywane są polami . Pola mogą zawierać dowolny typ danych.
Dostęp do danych w strukturach podaje się za pomocą notacji kropkowej.

Format: nazwastruktury.nazwa pola.
Przykład:
Struktura skalarna służy do przechowywania danych pacjentów należących do tej samej grupy.
pacjent(1).nazwa = 'Jan Kowalski';
pacjent(1).rozliczenie = 127,00;
pacjent(1).test = [79, 75, 73; 180, 178, 177,5; 220, 210, 205];
Uchwyty funkcyjne
Użycie uchwytu funkcji polega głównie na przekazaniu funkcji (numerycznej lub znakowej) do innej funkcji. Zmienne używane do wywoływania funkcji pośrednio można nazwać jako uchwyt funkcji .
Do utworzenia uchwytu funkcji używany jest operator „@”.
Przykład: Aby utworzyć uchwyt funkcji do oceny a2 -b2 , użyta funkcja to:
F = @(a,b) (a.^2 – b.^2);
Identyfikacja typu danych
MATLAB posiada zestaw zmiennych, które służą do identyfikacji typu danych
iskalenduracja | Aby sprawdzić, czy dane wejściowe to tablica czasu trwania kalendarza |
iscellstr | Aby sprawdzić, czy dane wejściowe są tablicą komórek składa się z wektorów znaków |
iscell | Aby sprawdzić, czy dane wejściowe to tablica komórek |
isjawa | Aby sprawdzić, czy dane wejściowe to obiekt Java |
Ischara | Aby sprawdzić, czy dane wejściowe to tablica znaków |
iskategoryczny | Aby sprawdzić, czy dane wejściowe są tablicą kategoryczną |
czas trwania | Aby sprawdzić, czy dane wejściowe to tablica czasu trwania |
Isenum | Aby sprawdzić, czy zmienna jest wyliczeniem |
unosi się na wodzie | Aby sprawdzić, czy dane wejściowe są tablicą zmiennoprzecinkową |
isdatetime | Aby sprawdzić, czy dane wejściowe to tablica daty i godziny |
isinteger | Aby sprawdzić, czy dane wejściowe są tablicą liczb całkowitych |
stabilny | Aby sprawdzić, czy dane wejściowe są w formie tabeli |
isgrafika | Prawda dla prawidłowych uchwytów obiektów graficznych |
isnumeryczny | Aby sprawdzić, czy dane wejściowe są tablicą numeryczną |
izoobiekt | Aby sprawdzić, czy dane wejściowe to obiekt MATLAB |
jest realne | Aby sprawdzić, czy tablica jest prawdziwa |
isstring | Aby sprawdzić, czy dane wejściowe to tablica ciągów |
isstruct | Aby sprawdzić, czy dane wejściowe to tablica struktury |
walidacjaatrybutów | Sprawdź poprawność tablicy |
jest rozkład jazdy | Aby sprawdzić, czy dane wejściowe to harmonogram |
jest | Aby sprawdzić, czy dane wejściowe mają określony typ danych |
islogiczny | Aby sprawdzić, czy dane wejściowe to tablica logiczna |
jest* | Wykryj stan |
klasa | Klasa obiektu |
Konwersja typu danych
Poniższe funkcje służą do zmiany między różnymi typami danych MATLAB, tablicą numeryczną, tablicą znaków, tablicą komórek, strukturami lub tabelami.
char – tablica znaków
cellstr – Aby zmienić na tablicę komórkową wektorów znaków
int2str – Aby zmienić liczby całkowite na znaki
mat2str – Aby zmienić macierz na znaki
num2str – Aby zmienić liczby na tablicę znaków
str2double – Aby zmienić ciągi na wartości o podwójnej precyzji
str2num – Aby zmienić tablicę znaków lub ciąg znaków na tablicę liczbową
native2unicode – Aby zmienić bajty numeryczne na reprezentację znaków Unicode
unicode2native - Aby zmienić reprezentację znaków Unicode na bajty numeryczne
base2dec - Aby zmienić tekst reprezentujący liczbę o podstawie N na liczbę dziesiętną
hex2dec – Aby zmienić tekstową reprezentację liczby szesnastkowej na liczbę dziesiętną
hex2num – Aby zmienić format szesnastkowy IEEE na liczbę o podwójnej precyzji
num2hex – Aby zmienić liczby o pojedynczej i podwójnej precyzji na format szesnastkowy IEEE
table2array – Aby zmienić tabelę na jednorodną tablicę
table2cell – Aby zmienić tablicę na tablicę komórek
table2struct – Aby zmienić tabelę na strukturę array
array2table – Aby zmienić jednorodną tablicę na tabelę
cell2table – Aby zmienić tablicę komórek na tabelę
struct2table – Aby zmienić tablicę struktury na tabelę
cell2mat – Aby zmienić tablicę komórek na zwykłą tablicę bazowego typu danych
cell2struct – Aby zmienić tablicę komórek na tablicę struktury
mat2cell – Aby zmienić tablicę na tablicę komórek, której komórki zawierają podtablice
num2cell – Aby zmienić tablicę na tablicę komórek z komórkami o stałej wielkości
struct2cell – Aby zmienić strukturę na tablicę komórek

Przeczytaj także: Rekurencja w strukturze danych: jak to działa, typy i kiedy są używane
Wniosek
Z powyższego artykułu otrzymaliśmy przegląd różnych typów danych MATLAB. Każdy z tych typów danych jest bardzo istotny dla użytkowników MATLAB, aby zrozumieć i efektywnie korzystać z programowania MATLAB. MATLAB jest bardzo popularny w dziedzinie nauki i inżynierii ze względu na precyzyjne obliczenia, składnię i wsparcie dużej społeczności.
Jeśli chcesz dowiedzieć się więcej na temat MATLAB, uczenia maszynowego i związanych z nim tematów, sprawdź dyplom PG IIIT-B i upGrad w uczeniu maszynowym i sztucznej inteligencji, który jest przeznaczony dla pracujących profesjonalistów i oferuje ponad 450 godzin rygorystycznego szkolenia, ponad 30 studia przypadków i zadania, status absolwentów IIIT-B, ponad 5 praktycznych praktycznych projektów zwieńczenia i pomoc w pracy z najlepszymi firmami.
Jakie są różne typy danych używane w MATLAB?
Dane w MATLAB mogą być numeryczne lub znakowe. Dane liczbowe reprezentują wartości odpowiadające znanym liczbom i operacjom arytmetycznym, takim jak dodawanie i mnożenie. Dane znakowe to ciągi tekstu, takie jak słowa, litery lub symbole (takie jak „$”). Dostęp do elementów tablic znaków można uzyskać przy użyciu tej samej składni, co w przypadku danych liczbowych (np. C('To jest tablica znaków') zwraca element tablicy C, który zawiera łańcuch, To jest tablica znaków).
Czym są struktury w MATLAB?
MATLAB obejmuje trzy klasy struktur: tablice komórek, struktury i tablice uchwytów. Tablica komórek to pojedyncza struktura danych zawierająca elementy różnych typów. Tablica komórek jest w rzeczywistości grupą struktur, z których każda zawiera jeden element tablicy. Jeśli używasz funkcji cell() do utworzenia tablicy komórek, MATLAB domyślnie wypełnia tablicę zerami. Struktura to zbiór zmiennych, które mają tę samą nazwę, ale mogą mieć różne typy. MATLAB obsługuje struktury jako tablice komórek. W tablicy komórek można przechowywać tylko jedną strukturę. Tablica uchwytów jest pojemnikiem na odwołania do innych tablic MATLAB lub do obiektów, takich jak wykresy i rysunki. W tablicy komórek można przechowywać wiele tablic uchwytów.
Jak zidentyfikować typ danych w programie Matlab?
Można to zrobić za pomocą polecenia isa w programie Matlab. Składnia polecenia isa jest następująca: isa(moje_dane). Na przykład: Jeśli chcesz poznać typ danych my_data, możesz użyć polecenia isa jako: isa(my_data) Zwróci to następujący tekst: int64, int32, int16, uint8, uint32, uint64, complex64, complex128, char . To polecenie ma być używane tylko w programie Matlab.