Compartir tecnología

Ejemplos prácticos de extracción y procesamiento de datos de Excel en Matlab

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

metas logradas

Cuando la cantidad de datos de Excel es enorme, el procesamiento manual de datos se convertirá en una tarea muy ingrata, propensa a errores y depresión.

Usar matlab para procesar se convierte en una forma sencilla y eficiente.

Por ejemplo, tome como ejemplo la tabla de multiplexación de pines de la serie GD32F7xx, en la tabla de Excel 169x19:

Cómo obtener rápidamente todos los pines correspondientes y valores AF de UART7_RX y generar la información en forma de matriz.

Introducción a funciones relacionadas: xlsread

leer xls es un software de matematicasMatlabLeer enSobresalir Una función de los datos del archivo. Es decir, desde la carpeta donde se encuentra el programa actual, según el rango especificado por los parámetros en la función, se lee el archivo partiendo de la celda y se devuelven los datos.

1num = xlsread('nombre de archivo')

Leer desde una carpeta específica, por ejemplonum=xlsread('datos.xls'),Es decir, desde la carpeta donde se encuentra el programa actual, desdeA1La celda comienza a leer, leer.datos.xlsarchivar y devolver los datos anúmero

2num = xlsread('nombre de archivo','hoja')
Selecciona elhoja, Por ejemplo'hoja1'

3num = xlsread('nombre de archivo', 'rango')
El rango de celdas donde se encuentra, por ejemplo.rango='A1:A8'

4num = xlsread('nombre de archivo', 'hoja', 'rango')
hoja
y el rango de celdas son limitados al mismo tiempo.

5[num, txt]= xlsread('nombre de archivo', …)
Guarde los datos devueltos por separado del texto.

6[num, txt, raw] = xlsread('nombre de archivo', …)
Al guardarlos por separado, haynúmeroyTXTSalvar acrudo, formando una única variable.

en,númeroes una variable numérica y una matriz,TXTes una variable de carácter y una matriz de celdas,crudoContiene variables numéricas y variables de caracteres,crudoes un conjunto de células.

Introducción a funciones relacionadas: relacionado con strcmp

1.strcmp (s1, s2): se utiliza para comparar si las cadenas s1 y s2 son iguales. Si son iguales, el resultado es 1; de lo contrario, es 0;

Por ejemplo:

TF=strcmp(s1,s2);

s1 y s2 son cadenas, por ejemplo: s1='hola', s2='matlab'.

Si s1 y s2 son consistentes, el valor de retorno TF=1; de lo contrario, TF=0.

TF=strcmp(s,c);

s es una cadena, c es una matriz de celdas y los elementos de c son todos cadenas, por ejemplo: s='hello', c={'hello','matlab';'HELLO','matlab'}.

El valor de retorno TF es una matriz con la misma longitud que c, y los elementos de TF son 1 o 0.

Compare cada elemento en c con s. Si son consistentes, el elemento en la posición correspondiente de TF es 1; de lo contrario, es 0.

TF=strcmp(c1,c2);

Tanto c1 como c2 son matrices de celdas y tienen la misma longitud. Todos sus elementos son cadenas, como c1={'hello','matlab';'HELLO','matlab'};c2={'hello'. 'matlab';'hola','MATLAB'};

El valor de retorno de TF es una matriz lógica con la misma longitud que c1 o c2, y los elementos de TF son 1 o 0.

Compare los elementos en las posiciones correspondientes de c1 y c2. Si son consistentes, el elemento en la posición correspondiente de TF es 1; de lo contrario, es 0.

2.strncmp (s1, s2, n): se utiliza para comparar si los primeros n caracteres de las cadenas s1 y s2 son iguales. Si son iguales, el resultado es 1; de lo contrario, es 0;

3.strcmpi (s1, s2): compara las cadenas s1 y s2 para ver si son iguales, ignorando el caso de las letras. Si son iguales, devuelve el resultado 1; de lo contrario, devuelve 0;

4.strncmpi (s1, s2, n): bajo la premisa de ignorar el caso de las letras, compare los primeros n caracteres de las cadenas s1 y s2 para ver si son iguales. Si son iguales, devuelva el resultado 1; de lo contrario, devuelva. 0.

Ejemplos prácticos

1. Defina la matriz de salida, extraiga el contenido del archivo de Excel y genere una matriz de texto:

  1. >> OUTPUT=cell(10,2);
  2. >> [~,txt] = xlsread('D:aaabbbccc.xlsx');

En este punto puedes ver las variables:

2. Edite la función de conversión:

Recorra todos los contenidos y compárelos para encontrar todos los pines correspondientes y valores AF de UART7_RX, y genere la información en forma de matriz.

  1. function OUTPUT=excel_read(specified_txt)
  2. [~,txt] = xlsread('D:aaabbbccc.xlsx');
  3. m = 1;
  4. OUTPUT=cell(10,2);
  5. for i=1:169
  6.     for j=1:19
  7.         if strcmp(txt(i,j),specified_txt)
  8.             OUTPUT(m,1)=txt(i,1);
  9.             OUTPUT(m,2)=txt(1,j);
  10.             m=m+1;
  11.         end
  12.     end
  13. end
  14. end

3. Llame a la función:

>> OUTPUT=excel_read('UART7_RX')

Se pueden obtener los siguientes resultados:

Es decir: todos los pines correspondientes y valores AF de UART7_RX, y genera la información en forma de matriz.