Comandos de operación, transformación y generación de matriz de matriz / matriz de Matlab

Prefacio:  

    Matlab se ha utilizado durante muchos años, y hay muchos consejos para el uso de matrices que a menudo se olvidan, y es difícil encontrar una nueva. Así que, en resumen, la explicación de algunas funciones profesionales en el artículo está escrita con referencia a la explicación de otras, y puede haber repeticiones. Wang Haihan . Si es útil para todos, puede dar un visto bueno, lo que se considera un respaldo a mi palabra clave. Gracias a todos. Espero que puedan corregirme si hay un error.

1. El uso de matrices y matrices de celdas

    Hay dos métodos principales de almacenamiento de matrices que se utilizan comúnmente en Matlab, matriz y celda

    1. Cuando los datos son un grupo único (múltiple) de datos unidimensionales y un grupo único de datos bidimensionales , utilice una matriz / arreglo unidimensional para el almacenamiento.

     P.ej:

                         

    2. Cuando los datos son múltiples conjuntos de datos bidimensionales , use una matriz de celdas para almacenar múltiples matrices al mismo tiempo

    P.ej:

               

En segundo lugar, la generación de matrices y matrices de celdas.

    Los métodos de generación de matrices incluyen principalmente la lectura de datos, la generación aleatoria, la generación 0/1 y la generación de matrices especiales (matriz unitaria, etc.) Creo que todos están familiarizados con la lectura de datos.Puedes usar funciones como xlsread. Tipo de método de generación de matrices. Esto incluye la generación de matrices unidimensionales, que generalmente no se distinguen cuando las uso, por lo que no dije por separado.

    1. Matriz aleatoria

        rand: genera un número pseudoaleatorio con un valor medio de 0,5 y una amplitud entre 0 y 1

                  A = rand (n): Genera una matriz cuadrada de números aleatorios de orden n A entre 0 y 1

                  A = rand (m, n): Genera una matriz A de números aleatorios m × n entre 0 y 1

        randn: Genera un número aleatorio distribuido normalmente con un valor medio de 0 y una varianza de 1.

                  De manera similar, A = randn (n) es generar una matriz cuadrada, A = randn (m, n) es generar una matriz m × n

    2. Matriz 0/1

        ceros: genera una matriz de todos los ceros

                  A = ceros (n): genera una matriz cuadrada con todos ceros

                  A = ceros (m, n): genera una matriz m × n de todos los 0

        unos: Genera una matriz de todos unos

                  De manera similar, A = unos (n) genera una matriz cuadrada de todos 1, y A = unos (m, n) genera una matriz m × n de todos 1.

    3. Matriz de identidad

         A = ojo (m, n): genera matriz identidad m × n

         A = diag (a, k): Genera una matriz con el elemento diagonal de la fila k-ésima siendo ay los otros elementos siendo 0. Cuando k = 0, la diagonal principal es la diagonal principal, y cuando k = 1, la diagonal principal es una diagonal Línea, -1 es la diagonal de la siguiente capa.

         Por ejemplo: A = diag ([1,1,1], 0) A = diag ([1,1,1], 1) A = diag ([1,1,1], - 1)

                                        

        El método para reemplazar los elementos diagonales de la capa k en la matriz A con una matriz específica :

        Reemplaza el valor de la diagonal de la siguiente capa (k = -1) de la diagonal principal en la matriz A con [5,6].

A=ones(3);
A=A-diag(diag(A,-1),-1)+diag([5,6],-1)

    4. Matriz en orden / orden inverso

         El método de generación es A = (valor inicial; longitud de crecimiento (puede ser un crecimiento negativo) ; valor final)

         A = (1: 1: 10): A = [1, 2, 3, 4,, 6, 7, 8, 9, 10], se puede abreviar como A = (1:10) La unidad de aumento predeterminada es 1
         A = (10: -1: 1): A = [10,9,8,7,6,5,4,3,2,1]

    5. Matriz de celdas

         A = celda (n): genera una matriz de celdas n × n de valores nulos

         A = celda (m, n): genera una matriz de celdas m × n de valores nulos, similar a una matriz

         A = {X, Y, Z} : genera una matriz de celdas {[X], [Y], [Z]}, donde X, Y, Z pueden ser matrices y símbolos de matriz específicos

         Por ejemplo: A = {[1,2], [3,4], [5,6]}

         

3. Operaciones con matrices y matrices de celdas

    1. El empalme de la matriz

          A = [B, C]: coloca la matriz C detrás de la matriz B, A = [[1,2], [3,4]] es [1,2,3,4]

          A = [B; C]: Coloque la matriz C en la siguiente fila de la matriz B, A = [[1,2]; [3,4]] es [1,2; 3,4]. Nota: la matriz de filas de empalme debe tener la misma dimensión; de lo contrario, no se puede empalmar. Puede hacer 0

          A = remodelar (A, n, m): (m × n elementos deben cumplirse en A) Leer los elementos en A según las columnas y luego empalmarlos según las filas

          Por ejemplo, cambie A de 3 filas y 4 columnas a 4 filas y 3 columnas, lea y almacene en el orden de las columnas

A=[[1,2,3,4];[5,6,7,8];[9,10,11,12]];
A=reshape(A,4,3)

          

         Cámbielo para leer en orden de fila y almacenar en orden de columna

A=[[1,2,3,4];[5,6,7,8];[9,10,11,12]];
A=reshape(A',4,3)

    2. Operaciones ordinarias de matrices

        En la operación simbólica de la matriz, * debe reemplazarse por. *, ^ Debe reemplazarse por. ^, Y +, - y / no son obligatorios.

        P.ej:

A=[1,2,3,4];
B=[5,6,7,8];
C=A.*B

         

    3. Operaciones en matrices de celdas

        La operación de la matriz de celdas se puede considerar como la operación de la matriz después de que la matriz se extrae de la celda, por lo que solo se introduce la extracción de la matriz.

        Por ejemplo: extraiga la m-ésima fila y la n-ésima columna de la matriz en la celda: a = {m, n}. Se requieren llaves , de lo contrario, la matriz extraída no es una matriz.

A={[1,2,3],[4,5,6],[7,8,9]};
a=A{1,1}

            

    El Sr. Zero Zero ha escrito mucho, y le tomó una mañana entera. Espero que a todos les guste después de leerlo. Por favor, molesten a todos ~ Actualizaré el código de varios algoritmos en el futuro, y pueden chatear conmigo si lo necesitan. ~

Supongo que te gusta

Origin blog.csdn.net/weixin_41971010/article/details/107149457
Recomendado
Clasificación