%% Esercizio 1 % La spesa settimanale relativa ad un determinato bene di 30 consumatori è % riportata di seguito X=[15; 15; 8; 5; 12; 18; 17; 7; 6; 19; 17; 21; 10; 13; 18 19; 13; 15; 11; 12; 19; 19; 13; 9; 15; 20; 17; 13; 10; 14]; % 1) Calcolare e commentare il boxplot della spesa. Calcolare il quantile % 0.83. boxplot(X); % Distribuzione quasi simmetrica. Nessun outlier qua083=quantile(X,0.83); % Intepretazione: 83 per cento dei consumtatoi del campione (circa 25) % effettua una spesa minore o uguale a 19 euro. Il 17 per cento una spesa % superiore %% 2) Sapendo che i primi 15 consumatori sono uomini calcolare il boxplot % separato per maschi e femmine. group=ones(30,1); group(16:30)=2; boxplot(X,group,'Labels',{'Maschi' 'Femmine'}) %% 3) Calcolare l'intervallo di confidenza al 95 per cento della spesa globale % e i due intervalli di confidenza della spesa per maschi e femmine. % Intervallo di confidenza per la spesa globale mea=mean(X); scor=std(X); n=length(X); pertstud=tinv(0.975,n-1); sqrtn=sqrt(n); Cint=[mea-pertstud*scor/sqrtn mea+pertstud*scor/sqrtn]; disp('Estremi dell''intervallo di confidenza della spesa globale al 95 per cento') disp(Cint) %% Calcolo intervallo di confidenza seperato per maschi e femmine % (risoluzione da pivelli) % Intervallo di confidenza al 95 per cento della spesa globale per gli % uomini X1=X(1:15); mea=mean(X1); scor=std(X1); n=length(X1); pertstud=tinv(0.975,n-1); sqrtn=sqrt(n); CintM=[mea-pertstud*scor/sqrtn mea+pertstud*scor/sqrtn]; disp('Estremi dell''intervallo di confidenza della spesa globale al 95 per cento per gli uomni') disp(CintM) % Intervallo di confidenza al 95 per cento della spesa globale per le % donne X1=X(16:end); mea=mean(X1); scor=std(X1); n=length(X1); pertstud=tinv(0.975,n-1); sqrtn=sqrt(n); CintF=[mea-pertstud*scor/sqrtn mea+pertstud*scor/sqrtn]; disp('Estremi dell''intervallo di confidenza della spesa globale al 95 per cento per le donne') disp(CintF) %% Calcolo intervallo di confidenza utilizzando la funzione grpstats (1 solo riga di codice) statstbl = grpstats(X,group,'meanci'); %% 4) Calcolare la distribuzione di frequenza della spesa utilizzando le % seguenti classi: [0-4; 4-10; 10-16; 16-20]; classi=[0 4 10 16 20 Inf]; %% Modo1 % Tramite histc calcolo le frequenze associate alle diverse classi h=histc(X,classi); close all barVariableWidth(h(1:end-1),classi); % barVariableWidth è molto più preciso in quanto tiene che conto della % diversa ampiezza delle classi % Ai fini dell'esame andava bene anche utilizzare la funzione bar % inserendo come coordinate x i valori centrali delle classi % valcen = vettore che contiene i valori centrali delle classi valcen=[2 7 13 18]; bar(valcen,h(2:end-1)) title('Distribuzione di frequenze (le coordinate x sono i valori centrali delle classi') %% Modo 2 utilizzo la funzione histcounts % alternativamente faccio riferimento alla funzione histcounts hh=histcounts(X,classi); close all barVariableWidth(hh,classi); %% Esercizio 2 % La seguente tabella riporta i dati relativi al giudizio espresso da alcuni % clienti sulla qualita dell’ultimo modello di smartphone prodotto da una % nota azienda. % Valutazione n_i % Inaccettabile 250 % Scarsa 500 % Accettabile 1500 % Buona 2100 % Ottima 350 % Calcolare l'indice di eterogeneità di Gini (assoluto e normalizzato) e % commentare i risultati ottenuti %% Calcolo indice di eterogenità di Gini % Calcolo indici G e G' % G=1-\sum f_i^2 freq=[250 500 1500 2100 350]; % f vettore delle frequenze relative f=freq/sum(freq); G= 1-sum(f.^2); p=length(f); G1=G/((p-1)/p); disp(['Indice di eterogeneità di Gini=' num2str(G)]) disp(['Indice di eterogeneità di Gini normalizzato=' num2str(G1)]) % L'eterogeneità è elevata e superiore all'80 per cento del valore massimo % possibile. %% Esercizio 3 % Fissare il seed dei numeri casuali a 100. % Generare una matrice di numeri casuali (denominata con le prime tre % lettere del vostro cognome) di dimensioni 300x5 da una distribuzione % normale con media 3 e varianza 6 % Calcolare la distanza di Mahalanobis di ogni riga rispetto al centroide. % Calcolare la matrice di correlazione, insieme ai relativi p-values. % Interpretare il p-value della relazione tra la variabile 2 e la variabile % 5. % Costruire la matrice dei diagrammi di dispersione tra le 5 variabili in % esame. rng(100) n=300; p=5; RIA=sqrt(6)*randn(n,p)+3; mu=mean(RIA); covar=cov(RIA); % Distanza di Mahalnanobis di ogni unità dal centroide dM=sqrt(mahalFS(RIA,mu,covar)); % Matrice di correlazione e matrice dei pvalues [R,Pval]=corr(RIA); disp('Matrice di correlazione') disp(R) disp('Matrice dei pvalue del test di assenza di correlazoine per ogni coppia di variabili') disp(Pval) % Come ci si attendeva i pvalues sono tutti superiori a 0.05 ==> % correlazioni non significative disp(Pval(2,5)) % Costruire la matrice dei diagrammi di dispersione tra le 5 variabili in % esame. spmplot(RIA)