MATLAB - Types de données

MATLAB ne nécessite aucune déclaration de type ou instruction de dimension. Chaque fois que MATLAB rencontre un nouveau nom de variable, il crée la variable et alloue l'espace mémoire approprié.

Si la variable existe déjà, MATLAB remplace le contenu d'origine par un nouveau contenu et alloue un nouvel espace de stockage, si nécessaire.

Par exemple,

Total = 42

L'instruction ci-dessus crée une matrice 1 par 1 nommée «Total» et y stocke la valeur 42.

Types de données disponibles dans MATLAB

MATLAB fournit 15 types de données fondamentaux. Chaque type de données stocke des données sous la forme d'une matrice ou d'un tableau. La taille de cette matrice ou tableau est au minimum de 0 par 0 et cela peut atteindre une matrice ou un tableau de n'importe quelle taille.

Le tableau suivant présente les types de données les plus couramment utilisés dans MATLAB -

Sr.No. Type de données et description
1

int8

Entier signé 8 bits

2

uint8

Entier non signé 8 bits

3

int16

Entier signé 16 bits

4

uint16

Entier non signé 16 bits

5

int32

Entier signé 32 bits

6

uint32

Entier non signé 32 bits

sept

int64

Entier signé 64 bits

8

uint64

Entier non signé 64 bits

9

single

données numériques en simple précision

dix

double

données numériques à double précision

11

logical

les valeurs logiques de 1 ou 0, représentent respectivement vrai et faux

12

char

données de caractères (les chaînes sont stockées comme vecteur de caractères)

13

cell array

tableau de cellules indexées, chacune capable de stocker un tableau d'une dimension et d'un type de données différents

14

structure

Structures de type C, chaque structure ayant des champs nommés capables de stocker un tableau d'une dimension et d'un type de données différents

15

function handle

pointeur vers une fonction

16

user classes

objets construits à partir d'une classe définie par l'utilisateur

17

java classes

objets construits à partir d'une classe Java

Exemple

Créez un fichier de script avec le code suivant -

str = 'Hello World!'
n = 2345
d = double(n)
un = uint32(789.50)
rn = 5678.92347
c = int32(rn)

Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant -

str = Hello World!
n =  2345
d =  2345
un = 790
rn = 5678.9
c =  5679

Conversion de type de données

MATLAB fournit diverses fonctions pour convertir, une valeur d'un type de données à un autre. Le tableau suivant présente les fonctions de conversion de type de données -

Fonction Objectif
carboniser Convertir en tableau de caractères (chaîne)
int2str Convertir des données entières en chaîne
mat2str Convertir la matrice en chaîne
num2str Convertir un nombre en chaîne
str2double Convertir la chaîne en valeur à double précision
str2num Convertir une chaîne en nombre
native2unicode Convertir les octets numériques en caractères Unicode
unicode2native Convertir les caractères Unicode en octets numériques
base2dec Convertir la chaîne numérique de base N en nombre décimal
bin2dec Convertir une chaîne de nombres binaires en nombre décimal
dec2base Convertir le nombre décimal en nombre de base N dans une chaîne
dec2bin Convertir un nombre décimal en nombre binaire en chaîne
dec2hex Convertir un nombre décimal en nombre hexadécimal dans une chaîne
hex2dec Convertir une chaîne de nombres hexadécimaux en nombre décimal
hex2num Convertir une chaîne de nombres hexadécimaux en nombre à double précision
num2hex Convertir les simples et les doubles en chaînes hexadécimales IEEE
cell2mat Convertir un tableau de cellules en tableau numérique
cell2struct Convertir un tableau de cellules en tableau de structure
cellstr Créer un tableau de cellules de chaînes à partir d'un tableau de caractères
mat2cell Convertir un tableau en tableau de cellules avec des cellules de tailles potentiellement différentes
num2cell Convertir un tableau en tableau de cellules avec des cellules de taille constante
struct2cell Convertir la structure en tableau de cellules

Détermination des types de données

MATLAB fournit diverses fonctions pour identifier le type de données d'une variable.

Le tableau suivant fournit les fonctions permettant de déterminer le type de données d'une variable -

Fonction Objectif
est Détecter l'état
est un Déterminer si l'entrée est un objet de la classe spécifiée
iscell Déterminer si l'entrée est un tableau de cellules
iscellstr Déterminer si l'entrée est un tableau de cellules de chaînes
ischar Déterminer si l'élément est un tableau de caractères
isfield Déterminer si l'entrée est un champ de tableau de structure
flotter Déterminer si l'entrée est un tableau à virgule flottante
ishghandle Vrai pour les poignées d'objet Handle Graphics
isinteger Déterminer si l'entrée est un tableau d'entiers
isjava Déterminer si l'entrée est un objet Java
islogique Déterminer si l'entrée est un tableau logique
isnumérique Déterminer si l'entrée est un tableau numérique
isobject Déterminer si l'entrée est un objet MATLAB
est vrai Vérifiez si l'entrée est un tableau réel
iscalaire Déterminer si l'entrée est scalaire
isstr Déterminer si l'entrée est un tableau de caractères
isstruct Déterminer si l'entrée est un tableau de structure
isvector Déterminer si l'entrée est vectorielle
classe Déterminer la classe d'objet
validateattributes Vérifier la validité du tableau
qui Lister les variables dans l'espace de travail, avec des tailles et des types

Exemple

Créez un fichier de script avec le code suivant -

x = 3
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
 
x = 23.54
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
 
x = [1 2 3]
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
 
x = 'Hello'
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)

Lorsque vous exécutez le fichier, il produit le résultat suivant -

x = 3
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x = 23.540
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x =

          1          2          3

ans = 0
ans = 1
ans = 1
ans = 0
x = Hello
ans = 0
ans = 0
ans = 1
ans = 0
ans = 0