Tipuri de date MATLAB: tot ce trebuie să știți

Publicat: 2020-09-16

MATLAB oferă multe modalități de a stoca numere și variabile. Toate numerele sunt echivalente cu numere reale numerice reale. Există o limită superioară pentru cel mai mare număr și o limită inferioară pentru valoarea absolută a numărului diferit de zero. Acest lucru se datorează memoriei finite a dispozitivelor de procesare în comparație cu numărul real, care poate fi infinit.

Din cauza spațiului finit, variabila MATLAB nu poate stoca un număr irațional. De exemplu, valoarea lui pi este returnată la valoarea de aproximare. Setul de valori care sunt reprezentate în variabila MATLAB este finit. Tipurile de date din MATLAB vor ajuta la gestionarea acestei limitări.

Toate variabilele MATLAB aparțin unei clase în care diferite clase au caracteristici diferite și sunt potrivite pentru a reprezenta diferite tipuri de date, fie că sunt numerice, textuale sau complexe.

Rețineți: Toate elementele date dintr-o matrice ar trebui să fie de același tip.

MATLAB oferă în total 16 tipuri fundamentale, iar tipurile de date din MATLAB sunt definite de,

  • Set de valori definite
  • Set de operații care poate fi utilizat pentru a efectua acele valori

Sursă

Cuprins

Tipuri numerice

Tipurile numerice includ numere întregi cu semn și fără semn, numere cu virgulă mobilă simple, cu precizie dublă. Variabilele numerice și caracteristicile lor sunt enumerate mai jos:

dubla Matrice cu precizie dublă
  • Tipul implicit de date numerice (clasa) în MATLAB
  • Stocat ca valoare în virgulă mobilă pe 64 de biți (8 octeți).
  • Gamă-

Numere negative = -1,79769 x 10 308 și -2,22507 x 10 -308

Numere pozitive = 2,22507 x 10 -308 și 1,79769 x 10 308

singur Matrice cu precizie unică
  • Stocat ca valoare în virgulă mobilă de 4 octeți (32 de biți).
  • Gamă-

Numere negative = -1,79769 x 10 308 și -2,22507 x 10 -308

Numere pozitive = 2,22507 x 10 -308 și 1,79769 x 10 308

int8 Matrice întregi semnate pe 8 biți
  • Stocat ca numere întregi semnate de 1 octet (8 biți).
  • Intervalul este de la -2 7 la 2 7 -1
int16 Matrice întregi semnate pe 16 biți
  • Stocat ca numere întregi semnate de 2 octeți (16 biți).
  • Interval -2 15 până la 2 15 -1
int32 Matrice întregi semnate pe 32 de biți
  • Stocat ca numere întregi semnate de 4 octeți (32 de biți).
  • Intervalul este de la -2 31 la 2 31 -1
int64 Matrice întregi semnate pe 64 de biți
  • Stocat ca numere întregi semnate de 8 octeți (64 de biți).
  • Intervalul este de la -2 63 la 2 63 -1
uint8 Matrice întregi nesemnate pe 8 biți
  • Stocat ca numere întregi fără semn de 1 octet (8 biți).
  • Intervalul este de la 0 la 2 8 -1
uint16 Matrice întregi nesemnate pe 16 biți
  • Stocat ca numere întregi fără semn de 2 octeți (16 biți).
  • Intervalul este de la 0 la 2 16 -1
uint32 Matrice întregi nesemnate pe 32 de biți
  • Stocat ca numere întregi fără semn de 4 octeți (32 de biți).
  • Intervalul este de la 0 la 2 32 -1
uint64 Matrice întregi nesemnate pe 64 de biți
  • Stocat ca numere întregi fără semn de 8 octeți (64 de biți).
  • Intervalul este de la 0 la 2 64 -1

Citiți: bucla while în MATLAB: tot ce trebuie să știți

Tip logic

Valoarea adevărată și falsă este reprezentată cu valoarea logică 0 și 1. Orice valoare numerică (necomplexă) poate fi convertită în reprezentare logică.

Sintaxă : L = logic (x)

Declarația de mai sus transformă x în orice matrice de valori logice. Elementul diferit de zero al lui x este convertit la valoarea logică 1 (adevărat), iar valoarea zero este convertită la valoarea logică 0 (fals).

Caracter și tip șir

Matricea de caractere și șiruri MATLAB oferă stocare pentru datele text. Secvența de caractere este o matrice de caractere în comparație cu succesiunea de numere numită matrice numerică.

Sintaxă : c = 'up grad'

„up grad” este secvența de caractere care formează o matrice de șiruri. Putem observa acest lucru și ca o bucată de text înfășurată.

Matrice de celule

O matrice de celule este un tip de date MATLAB care conține containere de date indexate numite celule . Celulele pot conține orice tip de date, conțin de obicei vectori de caractere de diferite lungimi, numere, o serie de numere de orice dimensiune. Seturile de celule sunt incluse în () și accesul la celule se face folosind {}, care este pentru a crea, edita sau șterge orice funcție de celule.

Sintaxă : c = {s,m,i,l,e}

Mese

Datele tabulare sau orientate pe coloane necesită tabele, iar acestea sunt stocate ca coloane într-un fișier text sau foaie de calcul. Conține rânduri și variabile de coloană. Fiecare variabilă poate avea diferite tipuri de date și dimensiuni diferite, dar fiecare variabilă trebuie să aibă același număr de rânduri.

Gama de funcții este utilizată pentru a accesa date pentru a crea, edita și citi datele din tabel.

Structuri

Câmpurile denumite conțin date cu diferite tipuri și dimensiuni. Aici containerele de date sunt folosite pentru a grupa datele conexe și tipul acestora, care sunt numite câmpuri . Câmpurile pot conține orice tip de date.

Accesul la datele din structuri se face folosind notația cu puncte.

Format: structname.fieldName.

Exemplu:

Structura scalară este utilizată pentru stocarea înregistrărilor pacienților, aparținând aceluiași grup.

pacient(1).nume = 'John Doe';

pacient(1).facturare = 127,00;

pacient(1).test = [79, 75, 73; 180, 178, 177,5; 220, 210, 205];

Mânere de funcție

Utilizarea unui handle de funcție este în principal pentru a transmite o funcție (numerică sau caracter) unei alte funcții. Variabilele care sunt folosite pentru a invoca funcția în mod indirect pot fi denumite ca mâner de funcție .

Pentru a crea un mâner de funcție se folosește operatorul „@”.

Exemplu: Pentru a crea un mâner de funcție pentru a evalua a2 -b2 , funcția utilizată este:

F = @(a,b) (a.^2 – b.^2);

Identificarea tipului de date

MATLAB are un set de variabile care sunt utilizate pentru a identifica tipul de date

iscalendarduration Pentru a verifica dacă datele de intrare sunt matrice de durată calendaristică
iscellstr Pentru a verifica dacă datele de intrare sunt o matrice de celule este de vectori de caractere
iscell Pentru a verifica dacă datele de intrare sunt matrice de celule
isjava Pentru a verifica dacă datele de intrare sunt obiect Java
ischar Pentru a verifica dacă datele de intrare sunt matrice de caractere
este categoric Pentru a verifica dacă datele de intrare sunt matrice categorice
este durata Pentru a verifica dacă datele de intrare sunt matrice de durată
isenum Pentru a verifica dacă variabila este enumerare
isfloat Pentru a verifica dacă datele de intrare sunt o matrice în virgulă mobilă
isdatetime Pentru a verifica dacă datele de intrare sunt matrice datetime
este întreg Pentru a verifica dacă datele de intrare sunt matrice întregi
stabil Pentru a verifica dacă datele de intrare sunt tabel
isgraphics Adevărat pentru mânerele de obiecte grafice valide
este numeric Pentru a verifica dacă datele de intrare sunt o matrice numerică
isobiect Pentru a verifica dacă datele de intrare sunt obiect MATLAB
e real Pentru a verifica dacă matricea este reală
isstring Pentru a verifica dacă datele de intrare sunt matrice de șiruri
isstruct Pentru a verifica dacă datele de intrare sunt matrice de structură
validateattributes Verificați validitatea matricei
orar Pentru a verifica dacă datele introduse sunt orar
isa Pentru a verifica dacă datele de intrare au tipul de date specificat
islogic Pentru a verifica dacă datele de intrare sunt o matrice logică
este* Detectează starea
clasă Clasa de obiect

Conversie tip de date

Următoarele funcții sunt utilizate pentru a schimba între diferite tipuri de date MATLAB, o matrice numerică, o matrice de caractere, o matrice de celule, structuri sau tabele.

char – Matrice de caractere

cellstr – Pentru a trece la matrice de celule de vectori de caractere

int2str – Pentru a schimba numerele întregi în caractere

mat2str – Pentru a schimba matricea în caractere

num2str – Pentru a schimba numerele într-o matrice de caractere

str2double – Pentru a schimba șirurile în valori de precizie dublă

str2num – Pentru a schimba matricea de caractere sau șirul în matrice numerică

native2unicode – Pentru a schimba octeții numerici în reprezentarea caracterelor Unicode

unicode2native – Pentru a schimba reprezentarea caracterelor Unicode în octeți numerici

base2dec – Pentru a schimba textul care reprezintă un număr în baza N în număr zecimal

hex2dec – Pentru a schimba reprezentarea textului unui număr hexazecimal în număr zecimal

hex2num – Pentru a schimba formatul hexazecimal IEEE într-un număr cu precizie dublă

num2hex – Pentru a schimba numerele cu precizie simplă și dublă în format hexazecimal IEEE

table2array – Pentru a schimba tabelul într-o matrice omogenă

table2cell – Pentru a schimba tabelul în matrice de celule

table2struct – Pentru a schimba tabelul în matrice de structură

array2table – Pentru a schimba matricea omogenă într-un tabel

cell2table – Pentru a schimba matricea de celule într-un tabel

struct2table – Pentru a schimba matricea structurii într-un tabel

cell2mat – Pentru a schimba matricea de celule într-o matrice obișnuită de tipul de date subiacent

cell2struct – Pentru a schimba matricea de celule în matrice de structură

mat2cell – Pentru a schimba matricea în matrice de celule ale cărei celule conțin subbarray

num2cell – Pentru a schimba matrice în matrice de celule cu celule de dimensiuni consistente

struct2cell – Pentru a schimba structura în matrice de celule

Citește și: Recursiune în structura datelor: cum funcționează, tipuri și când este utilizată

Concluzie

Din articolul de mai sus, am obținut o prezentare generală a diferitelor tipuri de date MATLAB. Fiecare dintre aceste tipuri de date este foarte esențial pentru ca utilizatorii MATLAB să înțeleagă și să utilizeze eficient programarea MATLAB. MATLAB este foarte popular în domeniile științei și ingineriei datorită calculului precis, sintaxei și suportului comunitar mare.

Dacă sunteți interesat să aflați mai multe despre MATLAB, învățarea automată și subiectele sale relevante, consultați Diploma PG de la IIIT-B și upGrad în Învățare automată și AI, care este concepută pentru profesioniști care lucrează și oferă peste 450 de ore de formare riguroasă, peste 30 studii de caz și sarcini, statutul de absolvenți IIIT-B, peste 5 proiecte practice practice și asistență pentru locuri de muncă cu firme de top.

Care sunt diferitele tipuri de date utilizate în MATLAB?

Datele din MATLAB pot fi fie numerice, fie de caractere. Datele numerice reprezintă valori care corespund numerelor și operațiilor aritmetice cu care sunteți familiarizat, cum ar fi adunarea și înmulțirea. Datele de caractere sunt șiruri de text, cum ar fi cuvinte, litere sau simboluri (cum ar fi „$”). Elementele matricelor de caractere pot fi accesate folosind aceeași sintaxă ca și pentru datele numerice (de exemplu, C('Acesta este o matrice de caractere') returnează elementul matricei C care conține șirul, Acesta este un tablou de caractere).

Ce sunt structurile în MATLAB?

MATLAB include trei clase de structuri: matrice de celule, structuri și matrice de mâner. O matrice de celule este o singură structură de date care conține elemente de diferite tipuri. O matrice de celule este de fapt un grup de structuri, fiecare dintre ele conține un element al matricei. Dacă utilizați funcția cell() pentru a crea o matrice de celule, MATLAB umple matricea cu zerouri în mod implicit. O structură este o colecție de variabile care au toate același nume, dar pot avea tipuri diferite. MATLAB gestionează structurile ca matrice de celule. Puteți stoca doar o singură structură într-o matrice de celule. O matrice handle este un container pentru referințe la alte matrice MATLAB sau la obiecte precum grafice și figuri. Puteți stoca mai multe matrice de mâner într-o matrice de celule.

Cum se identifică tipul de date în Matlab?

Acest lucru se poate face folosind comanda isa din matlab. Sintaxa comenzii isa este: isa(my_data). De exemplu: Dacă doriți să cunoașteți tipul de date al my_data, puteți utiliza comanda isa ca: isa(my_data) Aceasta va returna următorul text: int64, int32, int16, uint8, uint32, uint64, complex64, complex128, char . Această comandă trebuie utilizată numai în Matlab.