• Non ci sono risultati.

Fondamenti di Informatica

N/A
N/A
Protected

Academic year: 2021

Condividi "Fondamenti di Informatica"

Copied!
17
0
0

Testo completo

(1)

Fondamenti di Informatica

Gestione File in MATLAB

Prof. Marco Lombardi

(2)

Gestione File in MATLAB

OUTLINE

Gestione File

Caratteristiche dei File

Importare Dati da File

(3)

I File – 1/2

I

file possono essere visti come contenitori permanenti di

informazioni

Il Sistema Operativo si occupa della loro gestione, offrendo ai

programmatori la possibilità di

• Aprire/Chiudere un File • Leggere/Scrivere un File • Ecc.

(4)

I File – 2/2

Potrebbe essere necessario

• Leggere un file e memorizzare in una variabile • Scrivere in un file

MATLAB fornisce diversi meccanismi per leggere/scrivere file

(5)

Importare Dati da File – 1/4

Con la funzione

importdata

è possibile importare (mediante un solo

comando) i dati da diversi tipi di file

• Testuali

• Comma-Separated Values (CSV) • Ecc.

help

importdata

per maggiori dettagli

N.B. Per importare nel Workspace di MATLAB dati letti da file, si consiglia l’utilizzo di questa funzione.

(6)

Importare Dati da File – 2/4

>> A = importdata('matrice.txt'); A = 1 4 6 4 2 5 6 5 4 1, 4, 6 4, 2, 5 6, 5, 4

matrice.txt

Esempio 1

(7)

Importare Dati da File – 2/4

>> A = importdata('matrice.txt'); A = 1 4 6 4 2 5 6 5 4 1, 4, 6 4, 2, 5 6, 5, 4

matrice.txt

La virgola (simbolo ,) è

interpretata come separatore di colonne

Esempio 1

(8)

Importare Dati da File – 3/4

>> A = importdata('matrice.txt', ' '); A = 1 4 6 4 2 5 6 5 4 1 4 6 4 2 5 6 5 4

matrice.txt

Esempio 2

(9)

Importare Dati da File – 3/4

>> A = importdata('matrice.txt', ' '); A = 1 4 6 4 2 5 6 5 4 1 4 6 4 2 5 6 5 4

matrice.txt

È possibile scegliere, mediante un opportuno parametro della funzione

importdata, anche un delimitatore

di colonne diverso dalla virgola (in questo esempio il delimitatore è uno

spazio)

Esempio 2

(10)

Importare Dati da File – 4/4

Studenti/Voti esame Esame 1 Esame 2 Esame 3 Esame 4 Esame 5 Matricola 1 28 25 30 23 19

Matricola 2 24 27 28 21 24

Matricola 3 25 25 19 18 22

Matricola 4 21 30 30 22 30

Esempio 3

(11)

Importare Dati da File – 4/4

Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19

Matricola 2, 24, 27, 28, 21, 24

Matricola 3, 25, 25, 19, 18, 22

Matricola 4, 21, 30, 30, 22, 30

vs.txt

Studenti/Voti esame Esame 1 Esame 2 Esame 3 Esame 4 Esame 5 Matricola 1 28 25 30 23 19

Matricola 2 24 27 28 21 24

Matricola 3 25 25 19 18 22

Matricola 4 21 30 30 22 30

Esempio 3

File contenente dati testualie dati numerici

(12)

Importare Dati da File – 4/4

Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19 Matricola 2, 24, 27, 28, 21, 24 Matricola 3, 25, 25, 19, 18, 22 Matricola 4, 21, 30, 30, 22, 30

vs.txt

Nome del file

Studenti/Voti esame Esame 1 Esame 2 Esame 3 Esame 4 Esame 5 Matricola 1 28 25 30 23 19

Matricola 2 24 27 28 21 24

Matricola 3 25 25 19 18 22

Matricola 4 21 30 30 22 30

Esempio 3

(13)

Importare Dati da File – 4/4

>> file = importdata('vs.txt');

file =

data: [4x5 double] textdata: {5x6 cell}

Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19 Matricola 2, 24, 27, 28, 21, 24 Matricola 3, 25, 25, 19, 18, 22 Matricola 4, 21, 30, 30, 22, 30

vs.txt

Esempio 3

La variabile file è di tipo struct

(14)

Importare Dati da File – 4/4

>> file = importdata('vs.txt');

file =

data: [4x5 double] textdata: {5x6 cell}

Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19 Matricola 2, 24, 27, 28, 21, 24 Matricola 3, 25, 25, 19, 18, 22 Matricola 4, 21, 30, 30, 22, 30

vs.txt

Tutti i dati numerici vengono memorizzati in data

Esempio 3

(15)

Importare Dati da File – 4/4

>> file = importdata('vs.txt');

file =

data: [4x5 double] textdata: {5x6 cell}

Studenti/Voti, E1, E2, E3, E4, E5 Matricola 1, 28, 25, 30, 23, 19 Matricola 2, 24, 27, 28, 21, 24 Matricola 3, 25, 25, 19, 18, 22 Matricola 4, 21, 30, 30, 22, 30

vs.txt

Tutti i dati testuali (ad es., intestazione delle righe e delle colonne) vengono memorizzati in

textdata

Esempio 3

(16)

Importare Dati da File – 4/4

>> file = importdata('vs.txt'); file = data: [4x5 double] textdata: {5x6 cell} >> file.textdata ans =

'Studenti/Voti' ' E1' ' E2' ' E3' ' E4' ' E5' 'Matricola 1' '' '' '' '' '' 'Matricola 2' '' '' '' '' '' 'Matricola 3' '' '' '' '' '' 'Matricola 4' '' '' '' '' ''

Esempio 3

Per accedere ai dati testuali

(17)

Importare Dati da File – 4/4

>> file = importdata('vs.txt'); file = data: [4x5 double] textdata: {5x6 cell} >> A = file.data A = 28 25 30 23 19 24 27 28 21 24 25 25 19 18 22 21 30 30 22 30

Esempio 3

Per accedere ai dati numerici

Riferimenti

Documenti correlati

Invochi la funzione dell’Esercizio 3 (chiamata piu_fornito) con argomento di input M, e mostri a video l’output della funzione stessa. NOTA: I file magazzini.txt e prezzi.txt

• fid: identificatore del file su cui scrivere (nb: il file deve essere stato aperto in precedenza).. • array: array contenente i dati

Invochi la funzione dell’Esercizio 2 (chiamata incasso_concessionaria) con gli argomenti di input: C e I, ed infine mostri a video il risultato della funzione stessa.. NOTA: I

◦ Scrivere una funzione ricorsiva che prenda in input un array A e ne calcoli la somma degli elementi. Introduzione alla programmazione in MATLAB:

Invochi la funzione dell’Esercizio 4 (chiamata incassi_non_conseguiti) con gli argomenti di input: N e I, ed infine mostri a video il risultato della funzione stessa. NOTA: I

• Scrivere una funzione che prenda in input una matrice A e si comporti in maniera identica al comando sum(A)fornito da MATLAB.. • Scrivere una funzione che prenda in input

Invochi la funzione dell’Esercizio 2 (chiamata incasso_concessionaria) con gli argomenti di input: C e I, ed infine mostri a video il risultato della funzione stessa. NOTA: I

Invochi la funzione dell’Esercizio 2 (chiamata interesse_conto) con gli argomenti di input: C, T, 2 e 3, ed infine mostri a video il risultato della funzione stessa.. NOTA: I