2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Lorsque la quantité de données Excel est énorme, le traitement manuel des données devient une tâche très ingrate, sujette aux erreurs et à la dépression.
Utiliser Matlab pour traiter devient un moyen simple et efficace.
Par exemple, en prenant comme exemple la table de multiplexage des broches de la série GD32F7xx, dans la table Excel 169x19 :
Comment obtenir rapidement toutes les broches et valeurs AF correspondantes de UART7_RX et afficher les informations sous forme de tableau.
xls lire C'est un logiciel de mathématiquesMatlabLire dansExceller Une fonction des données dans le fichier. C'est-à-dire qu'à partir du dossier où se trouve le programme en cours, selon la plage spécifiée par les paramètres de la fonction, le fichier est lu à partir de la cellule et les données sont renvoyées.
(1)num = xlsread('nom de fichier')
Lire à partir d'un dossier spécifié, par exemplenum=xlsread('données.xls'),C'est-à-dire, à partir du dossier où se trouve le programme actuel, à partir deA1La cellule commence à lire, liredonnées.xlsfichier et renvoyer les données ànombre。
(2)num = xlsread('nom de fichier','feuille')
Sélectionnez lefeuille, Par exemple'feuille1'。
(3)num = xlsread('nom de fichier', 'plage')
La plage de cellules où il se trouve, par exempleplage = 'A1:A8'。
(4)num = xlsread('nom de fichier', 'feuille', 'plage')
feuilleet la portée des cellules sont limitées en même temps.
(5)[num, txt]= xlsread('nom de fichier', …)
Enregistrez les données renvoyées séparément du texte.
(6)[num, txt, raw] = xlsread('nom de fichier', …)
En les sauvegardant séparément, il y anombreetSMSEnregistrer dansbrut, formant une seule variable.
dans,nombreest une variable numérique et une matrice,SMSest une variable de caractères et un tableau de cellules,brutContient à la fois des variables numériques et des variables de caractères,brutest un tableau de cellules.
1.strcmp(s1, s2) : utilisé pour comparer si les chaînes s1 et s2 sont égales. Si elles sont égales, renvoie le résultat 1, sinon renvoie 0 ;
Par exemple:
TF=strcmp(s1,s2);
s1 et s2 sont des chaînes, par exemple : s1='hello', s2='matlab'.
Si s1 et s2 sont cohérents, la valeur de retour TF=1, sinon TF=0.
TF=strcmp(s,c);
s est une chaîne, c est un tableau de cellules et les éléments de c sont tous des chaînes, par exemple : s='hello', c={'hello','matlab';'HELLO','matlab'}.
La valeur de retour TF est un tableau de même longueur que c et les éléments de TF sont 1 ou 0.
Comparez chaque élément de c avec s. S'ils sont cohérents, l'élément à la position correspondante de TF est 1, sinon il est 0.
TF=strcmp(c1,c2);
c1 et c2 sont des tableaux de cellules et ils ont la même longueur. Leurs éléments sont tous des chaînes, telles que c1={'hello','matlab';'HELLO','matlab'};c2={'hello' , 'matlab';'bonjour','MATLAB'};
La valeur de retour TF est un tableau logique de même longueur que c1 ou c2, et les éléments de TF sont 1 ou 0.
Comparez les éléments aux positions correspondantes de c1 et c2 S'ils sont cohérents, l'élément à la position correspondante de TF est 1, sinon, il est 0.
2.strncmp(s1, s2, n) : utilisé pour comparer si les n premiers caractères des chaînes s1 et s2 sont égaux. S'ils sont égaux, le résultat est 1, sinon il est 0 ;
3.strcmpi(s1, s2) : comparez les chaînes s1 et s2 pour voir si elles sont égales, en ignorant la casse des lettres. Si elles sont égales, renvoyez le résultat 1, sinon renvoyez 0 ;
4.strncmpi(s1, s2, n) : en partant du principe d'ignorer la casse des lettres, comparez les n premiers caractères des chaînes s1 et s2 pour voir s'ils sont égaux, renvoyez le résultat 1, sinon renvoyez. 0.
1. Définissez le tableau de sortie, extrayez le contenu du fichier Excel et générez un tableau txt :
- >> OUTPUT=cell(10,2);
-
- >> [~,txt] = xlsread('D:aaabbbccc.xlsx');
À ce stade, vous pouvez voir les variables :
2. Modifiez la fonction de conversion :
Parcourez et comparez tout le contenu pour trouver toutes les broches et valeurs AF correspondantes de UART7_RX, et affichez les informations sous forme de tableau.
- function OUTPUT=excel_read(specified_txt)
- [~,txt] = xlsread('D:aaabbbccc.xlsx');
- m = 1;
- OUTPUT=cell(10,2);
-
- for i=1:169
- for j=1:19
- if strcmp(txt(i,j),specified_txt)
- OUTPUT(m,1)=txt(i,1);
- OUTPUT(m,2)=txt(1,j);
- m=m+1;
- end
- end
- end
- end
3. Appelez la fonction :
>> OUTPUT=excel_read('UART7_RX')
Les résultats suivants peuvent être obtenus :
C'est-à-dire : toutes les broches et valeurs AF correspondantes de UART7_RX, et afficher les informations sous forme de tableau.