%% Creare tramite ciclo oppure moltiplicazione matriciale la matrice % X che segue (punti 6) % % 9 12 15 18 21 24 27 30 33 % 12 16 20 24 28 32 36 40 44 % 15 20 25 30 35 40 45 50 55 % 18 24 30 36 42 48 54 60 66 % 21 28 35 42 49 56 63 70 77 % 24 32 40 48 56 64 72 80 88 % X=(3:8)'*(3:11); 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 adattare una stima non parametrica % della densità. Inserire in % ogni pannello il nome della variabile nel titolo dell'asse % delle ASCISSE (asse x). % Commentare la forma di distribuzione dell'ultima variabile. % (punti 6) load swiss_banknotes % p=numero di colonne del dataset % n = numero di righe del dataset [n,p]=size(swiss_banknotes); % v. pagine 220-222 del testo for j=1:p nexttile Xj=swiss_banknotes{:,j}; histfit(Xj,[],'Kernel') xlabel(swiss_banknotes.Properties.VariableNames{j}) end % La sesta variabile presenta una chiara distribuzione bimodale. %% Per ogni variabile calcolare la mediana % e mostrare il risultato nella command window. % Commentare i risultati (punti 6) % il secondo argomento di input di grpstats è vuoto [] in quanto voglio la % mediana per l'intero campione disp('Mediane per l''intero campione') S1=grpstats(swiss_banknotes,[],'median'); disp(S1) %% Per ogni variabile calcolare le mediane % per le banconte vere e per le banconote false % e mostrare il risultato nella command window. % 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 classificatoria alla table X1 X1=swiss_banknotes; X1.group=group; % il secondo argomento di grpstats contiene la variabile classificatoria % v.pp.107 108 S2=grpstats(X1,"group",'median'); disp('Mediane distinte 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"