% Domanda 1 (punti 20) % Caricare in memoria la table denominata bank_data tramite l'istruzione % load bank_data % Osservazione: assicurarsi di avere FSDA versione >=8.5.29 % La legenda delle variabili presenti in questo dataset è riportata di % seguito % - X1 = Personal loans, % - X2 = Financing and hire-purchase, % - X3 = Mortgages, % - X4 = Life insurance % - X5 = Share account % - X6 = Bond account % - X7 = Current account % - X8 = Salary deposits % - X9 = Debit cards % - X10 = Credit cards % - X11 =Telephone banking % - X12 = Domestic direct debits % - X13 = Money transfers. % - y = Profit/loss, % Ad esempio X1 riporta il numero di personali % per ogni cliente della banca ... % X7, il numero di conti correnti per ogni cliente della banca... % Punti 3. Costruire la tabella di contingenza tra le variabili X1 e X7 % Punti 3. Fare il disp della tabella di contingenza aggiungendo i nomi % delle righe e delle colonne. Quanti sono i clienti della banca che hanno % 0 prestiti personali e 5 conti correnti? % Punti 4 Verificare l'associazione tra le variabili X1 e X7 tramite % l'indici Chi2. Calcolare e commentare il pvalue associato. % Punti 2. Calcolare e commentare l'indice di Cramer. % Punti 5 Effettuare l'analisi delle corrispondenze tra le variabili X1 e % X7. COMMENTARE e fare il disp della percentuale di inerzia spiegata dalle % prime due dimensioni latenti. % Punti 3. Calcolare l'inerzia del punto riga % "presenza di 4 prestiti personali". %% Domanda 2: 10 punti % Utilizzando il seed 12345 generare una matrice di dimensione 200x3 % di numeri provenienti dalla distribuzione uniforme nell'intervallo 8 12 % Denominare questa matrice con le prime 3 lettere del proprio cognome. % Calcolare la distanza Euclidea e la distanza di Mahalanobis tra la riga 3 % e la riga 115 di questa matrice. Mostrare i risultati tramite la funzione % disp. %% Esercizio I soluzione load bank_data out=CorAna(bank_data(:,[1 7]),'datamatrix',true,'dispresults',true); % Punti 3. Fare il disp della tabella di contingenza aggiungendo i nomi % delle righe e delle colonne. Quanti sono i clienti della banca che hanno % 0 prestiti personali e 5 conti correnti? % Mostro la tabella di contingenza tra le variabili richieste T=out.Ntable; disp(T) % Numero di clienti che hanno 0 prestiti personali e 5 conti correnti disp(T("x0","x5")) % Punti 4 Verificare l'associazione tra le variabili X1 e X7 tramite % l'indici Chi2. Calcolare e commentare il pvalue associato. outNOM=corrNominal(out.Ntable); disp(outNOM.Chi2pval) % Relazione non significativa % Indice di Cramer. Relazione pari all'8 per cento circa del valore massimo % possibile disp(out.CramerV) outCO=corrOrdinal(T); % Calcolare e commentare l'indice gamma % L'indice gamma risulta negativo (le discordanze prevalgono sulle % concordanze). L'intervallo di confidenza dell'indice gamma contiene però % il valore 0 di conseguenza non è significativo disp(outCO.ConfLimtable(1,:)) % Calcolare l'inerzia del punto riga "4 prestiti personali". disp(out.OverviewRows("x4","Inertia")) % X7. COMMENTARE e fare il disp della percentuale di inerzia spiegata dalle prime due dimensioni latenti. disp(out.Summary("dim_2", "Cumulative")) % Le prime due dimensioni latenti spiegano l'81 per cento circa % dell'inerzia complessiva %% Domanda 2: 10 punti % Utilizzando il seed 12345 generare una matrice di dimensione 200x3 % di numeri provenienti dalla distribuzione uniforme nell'intervallo 8 12 % Denominare questa matrice con le prime 3 lettere del proprio cognome. % Calcolare la distanza Euclidea e la distanza di Mahalanobis tra la riga 3 % e la riga 115 di questa matrice. Mostrare i risultati tramite la funzione % disp. rng(12345) % rand genera numeri in base alle v.c. Uniforme nell'intervallo [0 1]. % Per ottenere numeri nell'intervallo [8 12] moltiplico il risultato per % 4 e aggiungo 8. RIA=8+4*rand(200,3); dM=squareform(pdist(RIA,"mahalanobis")); dE=squareform(pdist(RIA,"euclidean")); disp(['Distanza di Mahalanobis tra la riga 3 e la riga 115 :' num2str(dM(3,115))]) disp(['Distanza Euclidea tra tra la riga 3 e la riga 115 :' num2str(dE(3,115))])