%% Importazione dati da file Excel % Importazione dei dati dentro MATLAB (tramite la funzione readtable) % 'Sheet','dati' specifica che occorre leggere dal foglio denominato dati % 'range','B1:E26' specifica che occorre leggere la zona B1:E26 % 'ReadVariableNames',true, specifica che la prima riga della zona B1:E26 % contiene i nomi delle variabili (l'opzione predefinita è true di % conseguenza questa istruzione non era nencessaria) % 'ReadRowNames',true, specifica che la prima colonna contiene i nomi delle righe % 'Format','auto' X = readtable('HTss.xlsx', 'Sheet','dati','range','B1:E26',... 'ReadVariableNames',true,'ReadRowNames',true,'Format','auto'); % Per maggiori dettagli su readtable consultare l'help della funzione % nell'help locale oppure all'indirizzo % https://www.mathworks.com/help/matlab/ref/readtable.html %% Standardizzazione % Standardizzaione dei dati % Definisco la matrice Xd come il contenuto della table X in formato double % (ossia contentente solo i numeri dentro X e senza i nomi di riga e % colonne) Xd=X{:,:}; % alternativamente si poteva utilizzare l'istruzione % Xd= table2array(X); % Standardizzazione tramite media e sigma utilizzando la funzione zscore % La funzione per standardizzare i dati si chiama zscore Xdst=zscore(Xd); disp('Matrice degli scostamentis standardizzati') disp(Xdst) % La media di ogni colonna della matrice Xdst è zero % La varianza di ogni colonna della matrice Xdst è 1 % I numeri all'interno della matrice Xdst sono puri numeri (e di % conseguenza sono direttamente confontabili) % Verifico che le colonne della matrice Xdst abbiano media zero. % Ovviamente la media non sarà esattamente 0 ma un numero piccolissimo % dell'ordine di grandezza di 10^-15 (ossia 1.0e-15 utilizzando la % notazione ingegneristica) disp('Le colonne della matrice degli scostamenti standardizzati hanno media zero') disp(mean(Xdst)) % Verifico che le colonne della matrice Xdst abbiano varianza 1 disp('Le colonne della matrice degli scostamenti standardizzati hanno varianza uno') disp(var(Xdst)) %% Rappresentazione grafica degli scostamenti standardizzati % Si utilizza la funzione bar bar(categorical(X.Properties.RowNames),Xdst,'DisplayName','Xdst') % L'ultima operazione consiste nel trasformare in table la matrice Xdst. % aggiungendo i nomi delle righe e delle colonne Xdsttable=array2table(Xdst,'RowNames',X.Properties.RowNames,'VariableNames',X.Properties.VariableNames); disp(Xdsttable)