1 / 9

Importazione di dati

Importazione di dati. Nell’ambito dell’utilizzo di qualsiasi software statistico una necessità è quella di importare dati esterni forniti dall’utilizzatore per analizzarli.

ingrid
Download Presentation

Importazione di dati

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Importazione di dati • Nell’ambito dell’utilizzo di qualsiasi software statistico una necessità è quella di importare dati esterni forniti dall’utilizzatore per analizzarli. • Se i dati sono contenuti in un file .txt separati da spazi vuoti è possibile caricarli in MATLAB attraverso il comando load, utilizzandolo nel modo seguente:load + percorso del filee la matrice di dati viene salvata in MATLAB con il nome del file. È poi possibile ridenominarla come una qualsiasi matrice.

  2. Importazione di dati • Se i dati sono contenuti in un file .m salvato nella directory work di MATLAB basta semplicemente digitarne il nome sul command di MATLAB che automaticamente lo leggerà • Possiamo quindi creare una matrice di dati in un file .m, salvarlo nella directory work affinché questa matrice venga per sempre associata da MATLAB alla variabile.

  3. Esportazione di dati • Il comando save salva i dati in un file con estensione .mat nella directory work utilizzandolo nel modo seguente:save + nome del file + nome della variabile da salvare Tale variabile può essere ripresa con il comando load oppure riaprendo il file dalla cartella work. • È possibile in alternativa aprire un file, scrivergli sopra e poi richiuderlo con una serie di comandi. Poniamo di voler porre la nostra matrice P di 2 colonne in un file di percorso c:\outp.txt:

  4. Esportazione di dati • nomeint = fopen(‘file.txt’, ‘wt’)dove nomeint è un nome interno che diamo noi (quindi poteva esserci scritto al suo posto qualsiasi altra cosa), fopen è il comando di MATLAB e ‘wt’ sta per to write, perché apriamo il file per scrivergli sopra; • fprintf(nomeint, ‘%g %g’, P)dove ogni %g fa salvare la colonna di P, P è la nostra matrice • fclose(nomeint)per chiudere il file aperto con nome interno nomeint.

  5. Cicli • Molto spesso abbiamo bisogno nell’ambito della programmazione di cicli basati su contatori; si tratta di meccanismi che permettono di indicizzare alcune variabili in modo da creare operazioni per un numero determinato di volte. • Ad esempio, poniamo di avere una matrice e di voler calcolare la media di ogni riga, elevarle alla seconda e porle in un vettore. Ci serve un modo per selezionare la prima riga, calcolare la media, elevarla al quadrato e porre il risultato nel primo elemento del vettore; selezionare la seconda riga, calcolare la media, elevarla al quadrato e porre il risultato nel secondo elemento del vettore, etc. Vediamo come fare.

  6. Cicli: for • Il ciclo con il for sfrutta la seguente sintassi:for i = start:step:stop;……. comandi che contengono i ….end;Il contatore è i e il suo nome non è fisso, è determinato dall’utilizzatore (poteva essere a,b,c,d…). Quando il programma gira succede questo: • i parte dal valore start, viene immesso nei comandi in cui i compare, poi i viene incrementato dello step e così via • quando si arriva al valore stop il programma si ferma ed esce dal ciclo

  7. Cicli: for • Vediamo in concreto il meccanismo scrivendo il codice di prima. Prima di tutto creiamo un vettore di zeri con tante righe quante quelle della matrice (m) che accoglierà i quadrati delle medie per riga. Poi scriviamo il ciclo: • v=zeros(size(m,1),1) • for k=1:length(v); k va da 1 alla lunghezza di v • v(k)=mean(m(k,:))^2 nel posto k-esimo la media della riga k-esima ^2 • end; • Quando il loop gira k vale 1, viene immesso nel comando che calcola la media della riga k della matrice, la eleva alla seconda e la pone nel posto k del vettore, poi k viene aumentato di 1 e così via fino a finire le righe.

  8. Cicli: while • Il ciclo con il while usa la seguente sintassi:p = startwhile p <= stop;……. comandi che contengono p ….p= p+stepend;il codice precedente sarebbe • k=1; k va da 1 • While k<= length(v) alla lunghezza di v • v(k)=mean(m(k,:))^2 nel posto k-esimo la media della riga k-esima ^2 • k=k+1 k lo aumento di 1 alla volta • End;

  9. Cicli • I cicli for sono generalmente più efficienti dei cicli while, in termini di velocità di calcolo. • Entrambi i tipi di cicli (for e while) possono essere bloccati all’interno con il comando break. Questo comando risulta particolarmente utile utilizzandolo con if (v. dopo). La struttura del ciclo sarebbe del tipo:for / while if … (se succede questo) ….. (continua il loop e calcola questo) elseif … (se invece succede quest’altro) break (termina il ciclo)end;

More Related