Cómo usar la función única en Matlab

Cómo usar la función única en Matlab
El siguiente artículo explica cómo usar la función única () en MATLAB®. Esta función clasifica los elementos de una matriz y elimina los valores duplicados.

Sus principales propiedades y los diferentes modos de uso también se describen en detalle en este documento.

Este tutorial incluye ejemplos prácticos, así como algunos de los errores más comunes, los mensajes de error correspondientes y cómo solucionarlos para facilitar la programación.

Sintaxis única de Matlab

Esta es la sintaxis básica de esta función:

C = único (a)

Hay varias formas de ordenar los datos y cómo se trata la función única (). La sintaxis para cada uno de esos casos se muestra a continuación.

C = único (a)
C = único (A, SetOrder)
C = único (a, ocurrencia)
C = único (a, ___, 'filas')
C = único (a, 'filas', ___)
[C, ia, ic] = único (___)
[C, IA, IC] = único (a, 'legado')
[C, ia, ic] = único (a, 'filas', 'legado')
[C, ia, ic] = único (a, ocurrencia, 'legado')
[C, ia, ic] = único (a, 'filas', ocurrencia, 'legado')
C = datos únicos de un.
ia = índice de vector de columna de un
ic = Índice de vector de columna de C.

Descripción y ejemplos de únicos

La función única devuelve en "C" una lista con los datos enviados en "A", ordenados y sin repeticiones. Esta función también tiene salidas "IA" e "IC", que devuelven el índice de los datos enviados en "A" y devueltos en "C". El modo de clasificación y el tratamiento de los datos se pueden seleccionar utilizando banderas enviadas en la llamada de función.

En los siguientes ejemplos, veremos las diferentes formas de usar esta función, sus variantes en la clasificación y el manejo de los datos de entrada.

Cómo ordenar los elementos de una matriz y eliminar sus elementos repetidos con la función única de MATLAB

En el siguiente ejemplo, vemos la forma básica de usar esta función donde enviamos como argumento de entrada una matriz numérica "A" con elementos 4 × 4, desordenado y con repeticiones.

A = [8, 1, 2, 8; 9, 10, 9, 5;
8, 1, 2, 8; 9, 10, 9, 5];
C = único (a)
C = 1 2 5 8 9 10

Como resultado, la función única devuelve una lista con los valores ordenados de menos a mayor y sin repetición.

Cómo ordenar los elementos de una matriz, eliminar sus elementos repetidos y obtener el índice de los datos de entrada y salida

En este ejemplo, veremos cómo obtener el índice de "A" (IA) y "C" (IC), así como el orden de los datos de "A" y la eliminación de repeticiones.

A = [1, 2, 3, 4, 5; 10, 11, 12, 13, 14; 5, 12, 1, 13, 3];
[C, ia, ic] = único (a)

Como resultado, la función única () devolverá los resultados del orden de "A" en "C".

C = 1 2 3 4 5 10 11 12 13 14

El índice de a:

ia = 1 4 7 10 3 2 5 6 11 14

Y el índice de C:

IC = 1 6 5 2 7 8 3 8 1 4 9 9 5 10 3

La opción "ocurrencia" especifica por las banderas "primero" y "último" que se debe devolver el índice si se repiten los valores.

Cómo seleccionar el modo de pedido de datos utilizando la función única en MATLAB

Ahora, veamos la opción "SetOrder" de la función única que nos permite especificar el modo de pedido de los datos devueltos en "C" utilizando los indicadores "Ordenados" y "Estables".

Si la función única () se llama sin la entrada "setOrder", se enviará en modo "ordenado" de forma predeterminada y los elementos en "C" se devolverán en orden de más pequeño a mayor. Si se llama único con la entrada "SetOrder" en modo "Estable", los elementos en "C" se devuelven en el mismo orden de entrada y sin repeticiones.

La sintaxis es la siguiente:

C = único (A, SetOrder)

Ejemplo:

A = [8, 2, 8; 9, 10, 9]
C = único (a, "ordenado")

Como se ve en la siguiente figura, cuando se llama un único () con la bandera "ordenada", los elementos en "C" se devuelven en orden de más pequeño a más grande sin repetición.

C = 2 8 9 10

El indicador "Estable" devuelve los datos en "C" en el mismo orden de entrada, solo sin repeticiones.

A = [8, 2, 8; 9, 10, 9]
C = único (a, "estable")
C = 8 9 2 10

Cómo hacer el orden de los elementos en una matriz de celdas de vectores de caracteres utilizando la función única

En este ejemplo, veremos los elementos clasificados en una matriz celular de vectores de caracteres utilizando una función única (). Para hacer esto, crearemos una variedad celular de vectores de personajes "A" con elementos no ordenados y repetidos.

A = 'a', 'd', 'c', 'b', 'a', 'd', 'e', ​​'d', 'e';
C = único (a)

Como resultado, un único () regresa en "C" una matriz celular de vectores de caracteres con todos sus elementos ordenados.

C = 'a' 'b' 'c' 'd' 'e'

Cómo ordenar las filas contenidas en una matriz con la función única

En este ejemplo, la función única () devuelve las filas contenidas en una matriz ordenada y con las ocurrencias eliminadas. Para este ejemplo, creamos una matriz con 6 × 5 elementos "A" y llamamos a la función única (). En este caso, la función toma cada fila como un elemento único y devuelve las filas en orden de más pequeña a mayor, eliminando los duplicados.

A = [51, 2, 3, 2, 5;
10, 11, 12, 11, 14;
10, 11, 12, 11, 14;
30, 31, 3, 2, 34;
45, 3, 21, 43, 43;
35, 3, 41, 48, 43];
C = único (a, 'filas'

La función única () en este caso volverá en "C".

C =
10 11 12 11 14
30 31 3 2 34
35 3 41 48 43
45 3 21 43 43
51 2 3 2 5

Cómo seleccionar las filas de una matriz que desea pedir con la función única

En este ejemplo, la función única () devolverá las filas contenidas en una matriz, ordenará y eliminará los duplicados. Para este ejemplo, crearemos una matriz de 6 × 5 "A" de elementos y llamaremos a la función. En este caso, tomará cada fila como un solo elemento y devolverá las filas en orden de más pequeño a más grande, eliminando los duplicados.

A = [51, 2, 3, 2, 5;
10, 11, 12, 11, 14;
10, 11, 12, 11, 14;
30, 31, 3, 2, 34;
45, 3, 21, 43, 43;
35, 3, 41, 48, 43];
C = único (a (:, 3: 5), 'filas')

La función única () en este caso volverá en "C".

C =
3 2 5
3 2 34
12 11 14
21 43 43
41 48 43

Conclusión

En este artículo, he explicado cómo usar la función Matlab Unique () para ordenar los elementos de una matriz, y he incluido algunos ejemplos prácticos que muestran cómo usar la función en todas sus variantes. Además, todos los argumentos de entrada compatibles y los tipos de datos se han descrito en detalle. Esperamos que hayas encontrado útil este artículo de Matlab. Consulte otros artículos de Sugerencia de Linux para obtener más consejos e información.