%% Creare tramite ciclo oppure moltiplicazione matriciale la matrice % X che segue (punti 6) % % 6 8 10 12 14 16 18 20 % 9 12 15 18 21 24 27 30 % 12 16 20 24 28 32 36 40 % 15 20 25 30 35 40 45 50 % 18 24 30 36 42 48 54 60 % 21 28 35 42 49 56 63 70 % 24 32 40 48 56 64 72 80 % X=(2:8)'*(3:10); disp(X) %% Caricare in memoria il dataset swiss_banknotes tramite l'istruzione % load swiss_banknotes % Questo dataset contiene 6 caratteristiche di 200 % banconote. Le prime 100 righe si riferiscono a banconote vere e le % rimanenti 100 righe a banconte ritenute false. % Per ogni variabile del dataset, costruire un grafico ad istogrammi con % sovraimposta la densità normale e verificare l'adattamento. Inserire in % ogni pannello il nome della variabile nel titolo dell'asse % delle ordinate. % Commentare il grado di adattamento alla distribuzione normale di ogni % variabile. (punti 6) load swiss_banknotes % p=numero di colonne del dataset % n = numero di righe del dataset [n,p]=size(swiss_banknotes); % v. pagina 220 del testo for j=1:p nexttile Xj=swiss_banknotes{:,j}; histfit(Xj) ylabel(swiss_banknotes.Properties.VariableNames{j}) end % La sesta variabile presenta una chiara distribuzione bimodale. % la variabile 4 si adatta molto poco alla normale % Le variabile presentano una distribuzione in cui la classe centrale non % presenta la più alta frequenza (stessa cosa anche per la variabile 2). % La variabile 4 presenta una distribuzione con asimmetrica positiva %% Per ogni variabile calcolare il test di asimmetria % e mostrare il risultato nella command windows. % Commentare i risultati (punti 6) % V. ad esempio Esercizio 3.8 del libro disp('Indici di asimmetria per l''intero campione') S1=grpstats(swiss_banknotes,[],@skewness); disp(S1) %% Per ogni variabile calcolare il test di asimmetria % per le banconte vere e per le banconote false % e mostrare il risultato nella command windows. % Commentare i risultati (punti 6) % Creo la variabile di raggruppamento % 1 = banconota vera % 2 = banconota falsa group=ones(n,1); group(101:200)=2; % Aggiungo la variabile di raggruppamento alla table X1 X1=swiss_banknotes; X1.group=group; S2=grpstats(X1,"group",@skewness); disp('Indici di asimmetria distinti per tipologia di banconota') disp(S2) %% Costruire la matrice dei diagrammi di dispersione utilizzando simboli % diversi per le banconote vere e le banconote false ed inserendo i boxplot % univariati sulla diagonale principale e gli ellissi di confidenza in ogni % pannello. Commentare il pannello dove si visualizza maggiormente la % distinzione tra banconte vere e banconote false (punti 6) % (v. p. 243 del testo) pippo=struct; pippo.type='ellipse'; spmplot(swiss_banknotes,'dispopt','box','overlay',pippo,'group',group) % il pannello dove si visualizza maggiormente la % distinzione tra banconte vere e banconote false è quello tra % "distance_bottom_border" e "diagonal_distance"