Tipos de datos de MATLAB: todo lo que necesita saber

Publicado: 2020-09-16

MATLAB proporciona muchas formas de almacenar números y variables. Todos los números son equivalentes a números reales numéricos reales. Hay un límite superior para el número más grande y un límite inferior para el valor absoluto del número distinto de cero. Esto se debe a la memoria finita de los dispositivos de procesamiento en comparación con el número real, que puede ser infinito.

Debido al espacio finito, la variable MATLAB no puede almacenar un número irracional. Por ejemplo, el valor de pi se devuelve al valor de aproximación. El conjunto de valores que se representan en la variable MATLAB es finito. Los tipos de datos en MATLAB ayudarán a manejar esta limitación.

Todas las variables de MATLAB pertenecen a una clase donde las diferentes clases tienen diferentes características y son adecuadas para representar diferentes tipos de datos, ya sean numéricos, textuales o complejos.

Recuerde: todos los elementos dados en una matriz deben ser del mismo tipo.

MATLAB proporciona un total de 16 tipos fundamentales, y los tipos de datos en MATLAB se definen por,

  • Conjunto de valores definido
  • Conjunto de operaciones que se puede utilizar para realizar en esos valores

Fuente

Tabla de contenido

Tipos numéricos

Los tipos numéricos incluyen enteros con y sin signo, números de punto flotante de precisión simple y doble. Las variables numéricas y sus características se enumeran a continuación:

doble Matrices de doble precisión
  • Tipo de datos numérico predeterminado (clase) en MATLAB
  • Almacenado como valor de punto flotante de 64 bits (8 bytes)
  • Rango-

Números negativos = -1.79769 x 10 308 y -2.22507 x 10 -308

Números positivos = 2,22507 x 10 -308 y 1,79769 x 10 308

único Matrices de precisión simple
  • Almacenado como valor de punto flotante de 4 bytes (32 bits)
  • Rango-

Números negativos = -1.79769 x 10 308 y -2.22507 x 10 -308

Números positivos = 2,22507 x 10 -308 y 1,79769 x 10 308

int8 Matrices de enteros con signo de 8 bits
  • Almacenado como enteros con signo de 1 byte (8 bits)
  • El rango es -2 7 a 2 7 -1
int16 Matrices de enteros con signo de 16 bits
  • Almacenado como enteros con signo de 2 bytes (16 bits)
  • Rango -2 15 a 2 15 -1
int32 Matrices de enteros con signo de 32 bits
  • Almacenado como enteros con signo de 4 bytes (32 bits)
  • El rango es -2 31 a 2 31 -1
int64 Matrices de enteros con signo de 64 bits
  • Almacenado como enteros con signo de 8 bytes (64 bits)
  • El rango es -2 63 a 2 63 -1
uint8 Matrices de enteros sin signo de 8 bits
  • Almacenado como enteros sin signo de 1 byte (8 bits)
  • El rango es de 0 a 2 8 -1
uint16 Matrices de enteros sin signo de 16 bits
  • Almacenado como enteros sin signo de 2 bytes (16 bits)
  • El rango es de 0 a 2 16 -1
uint32 Matrices de enteros sin signo de 32 bits
  • Almacenado como enteros sin signo de 4 bytes (32 bits)
  • El rango es de 0 a 2 32 -1
uint64 Matrices de enteros sin signo de 64 bits
  • Almacenado como enteros sin signo de 8 bytes (64 bits)
  • El rango es de 0 a 2 64 -1

Leer: Ciclo while en MATLAB: todo lo que necesita saber

Tipo lógico

El valor verdadero y falso se representa con el valor lógico 0 y 1. Cualquier valor numérico (no complejo) se puede convertir en representación lógica.

Sintaxis : L = lógico (x)

La declaración anterior convierte x en cualquier matriz de valores lógicos. El elemento distinto de cero de x se convierte en el valor lógico 1 (verdadero) y el valor cero se convierte en el valor lógico 0 (falso).

Tipo de carácter y cadena

La matriz de caracteres y cadenas de MATLAB proporciona almacenamiento para datos de texto. La secuencia de caracteres es una matriz de caracteres en comparación con la secuencia de números llamada matriz numérica.

Sintaxis : c = 'graduado'

“up grad” es la secuencia de caracteres que forman una matriz de cadenas. Podemos observar esto también como un trozo de texto envuelto.

matriz de celdas

Una matriz de celdas es un tipo de datos de MATLAB que contiene contenedores de datos indexados llamados celdas . Las celdas pueden contener cualquier tipo de datos, comúnmente contienen vectores de caracteres de diferente longitud, números, una matriz de números de cualquier tamaño. Los conjuntos de celdas están encerrados entre () y el acceso a las celdas se realiza mediante {}, que es para crear, editar o eliminar cualquier función de celda.

Sintaxis : c = {s,m,i,l,e}

Mesas

Los datos tabulares u orientados a columnas requieren tablas, y esto se almacena como columnas en un archivo de texto o una hoja de cálculo. Contiene variables de filas y columnas. Cada variable puede tener diferentes tipos de datos y diferentes tamaños, pero cada variable debe tener el mismo número de filas.

Se utiliza una variedad de funciones para acceder a los datos para crear, editar y leer los datos de la tabla.

Estructuras

Los campos con nombre contienen datos con diferentes tipos y tamaños. Aquí se utilizan contenedores de datos para agrupar datos relacionados y su tipo, que se denominan campos . Los campos pueden contener cualquier tipo de datos.

El acceso a los datos en las estructuras se da usando la notación de puntos.

Formato: structname.fieldName.

Ejemplo:

La estructura escalar se utiliza para almacenar registros de pacientes, pertenecientes al mismo grupo.

paciente(1).nombre = 'John Doe';

paciente(1).facturación = 127,00;

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

Asas de función

El uso de un identificador de función es principalmente para pasar una función (numérica o de caracteres) a otra función. Las variables que se utilizan para invocar la función indirectamente se pueden nombrar como controlador de función .

Para crear un identificador de función se utiliza el operador '@'.

Ejemplo: Para crear un identificador de función para evaluar a2 -b2 , la función utilizada es:

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

Identificación del tipo de datos

MATLAB tiene un conjunto de variables que se utilizan para identificar el tipo de datos

iscalendarduration Para verificar si los datos de entrada son una matriz de duración del calendario
iscellstr Para verificar si los datos de entrada son una matriz de celdas de vectores de caracteres
iscelda Para verificar si los datos de entrada son una matriz de celdas
isjava Para verificar si los datos de entrada son un objeto Java
ischar Para verificar si los datos de entrada son una matriz de caracteres
es categórico Para verificar si los datos de entrada son una matriz categórica
esduración Para verificar si los datos de entrada son una matriz de duración
iseno Para verificar si la variable es una enumeración
es flotar Para verificar si los datos de entrada son una matriz de punto flotante
esfechahora Para verificar si los datos de entrada son una matriz de fecha y hora
es entero Para verificar si los datos de entrada son una matriz de enteros
estable Para verificar si los datos de entrada son una tabla
isgraficos Verdadero para identificadores de objetos de gráficos válidos
isnumeric Para verificar si los datos de entrada son una matriz numérica
esobjeto Para verificar si los datos de entrada son un objeto MATLAB
es real Para verificar si la matriz es real
escadena Para verificar si los datos de entrada son una matriz de cadenas
estructura Para verificar si los datos de entrada son una matriz de estructura
validar atributos Comprobar la validez de la matriz
eshorario Para verificar si los datos de entrada son horarios
es un Para verificar si los datos de entrada tienen un tipo de datos especificado
es lógico Para verificar si los datos de entrada son una matriz lógica
es* Detectar estado
clase Clase de objeto

Conversión de tipos de datos

Las siguientes funciones se utilizan para cambiar entre diferentes tipos de datos de MATLAB, una matriz numérica, una matriz de caracteres, una matriz de celdas, estructuras o tablas.

char – Matriz de caracteres

cellstr: para cambiar a una matriz de celdas de vectores de caracteres

int2str – Para cambiar números enteros a caracteres

mat2str – Para cambiar matriz a caracteres

num2str: para cambiar números a una matriz de caracteres

str2double – Para cambiar cadenas a valores de doble precisión

str2num: para cambiar la matriz de caracteres o la cadena a una matriz numérica

native2unicode: para cambiar los bytes numéricos a la representación de caracteres Unicode

unicode2native: para cambiar la representación de caracteres Unicode a bytes numéricos

base2dec: para cambiar el texto que representa un número en base N a un número decimal

hex2dec: para cambiar la representación de texto de un número hexadecimal a un número decimal

hex2num: para cambiar el formato hexadecimal IEEE a un número de precisión doble

num2hex: para cambiar números de precisión simple y doble al formato hexadecimal IEEE

table2array: para cambiar la tabla a una matriz homogénea

table2cell: para cambiar la tabla a la matriz de celdas

table2struct: para cambiar la tabla a la matriz de estructura

array2table – Para cambiar la matriz homogénea a una tabla

cell2table: para cambiar la matriz de celdas a una tabla

struct2table: para cambiar la matriz de estructura a una tabla

cell2mat: para cambiar la matriz de celdas a una matriz ordinaria del tipo de datos subyacente

cell2struct: para cambiar la matriz de celdas a una matriz de estructura

mat2cell: para cambiar una matriz a una matriz de celdas cuyas celdas contienen subarreglos

num2cell: para cambiar de matriz a matriz de celdas con celdas de tamaño constante

struct2cell: para cambiar la estructura a una matriz de celdas

Lea también: Recursividad en la estructura de datos: cómo funciona, tipos y cuándo se usa

Conclusión

Del artículo anterior, obtuvimos una descripción general de varios tipos de datos de MATLAB. Cada uno de estos tipos de datos es muy esencial para que los usuarios de MATLAB comprendan y utilicen de manera eficaz la programación de MATLAB. MATLAB es muy popular en los campos de la ciencia y la ingeniería debido a su cálculo preciso, sintaxis y gran apoyo de la comunidad.

Si está interesado en obtener más información sobre MATLAB, el aprendizaje automático y sus temas relevantes, consulte el Diploma PG en aprendizaje automático e IA de IIIT-B y upGrad, que está diseñado para profesionales que trabajan y ofrece más de 450 horas de capacitación rigurosa, más de 30 estudios de casos y asignaciones, estado de ex alumnos de IIIT-B, más de 5 proyectos prácticos finales y asistencia laboral con las mejores empresas.

¿Cuáles son los diferentes tipos de datos utilizados en MATLAB?

Los datos en MATLAB pueden ser numéricos o de caracteres. Los datos numéricos representan valores que corresponden a los números y operaciones aritméticas con las que está familiarizado, como la suma y la multiplicación. Los datos de caracteres son cadenas de texto, como palabras, letras o símbolos (como '$'). Se puede acceder a los elementos de las matrices de caracteres utilizando la misma sintaxis que para los datos numéricos (p. ej., C('Esta es una matriz de caracteres') devuelve el elemento de la matriz C que contiene la cadena, Esta es una matriz de caracteres).

¿Qué son las estructuras en MATLAB?

MATLAB incluye tres clases de estructuras: matrices de celdas, estructuras y matrices de identificadores. Una matriz de celdas es una estructura de datos única que contiene elementos de diferentes tipos. Una matriz de celdas es en realidad un grupo de estructuras, cada una de las cuales contiene un elemento de la matriz. Si utiliza la función cell() para crear una matriz de celdas, MATLAB llena la matriz con ceros de forma predeterminada. Una estructura es una colección de variables que tienen el mismo nombre, pero pueden tener diferentes tipos. MATLAB maneja las estructuras como arreglos de celdas. Puede almacenar solo una estructura en una matriz de celdas. Una matriz de identificadores es un contenedor de referencias a otras matrices de MATLAB oa objetos como gráficos y figuras. Puede almacenar varias matrices de identificadores en una matriz de celdas.

¿Cómo identificar el tipo de datos en matlab?

Esto se puede hacer usando el comando isa en matlab. La sintaxis del comando isa es: isa(my_data). Por ejemplo: si desea conocer el tipo de datos de my_data, puede usar el comando isa como: isa(my_data) Esto devolverá el siguiente texto: int64, int32, int16, uint8, uint32, uint64, complex64, complex128, char . Este comando se debe usar solo en matlab.