MATLAB-UD5. Array di strutture. File.
|
|
|
- Franca Longo
- 9 anni fa
- Просмотров:
Транскрипт
1 MATLAB-UD5 Array di strutture. File.
2 Strutture Un vettore è una struttura di dati dello stesso tipo (numerico oppure carattere/stringa); Una struttura è una struttura di dati di tipo diverso; Una struttura è costituita da elementi detti campi ; Per accedere agli elementi delle strutture si usano i nomi dei campi;
3 Esempio di struttura Descrizione di una variabile studente che contenga le seguenti informazioni: nome; cognome; ; voti; Ognuno di tali elementi si chiama campo della struttura; Per definire una struttura si possono usare: Le istruzioni di assegnazione (es: studente.nome = Mario ) La funzione studente = struct( nome, Mario,'field2',VALUES2,..) studente.nome = Mario ; studente.cognome = Rossi ; studente. = [email protected] ; studente.voti = [21,25,18, ];
4 Array di strutture Un array di strutture è un array (vettore) i cui elementi sono strutture; Per aggiungere una nuova struttura ad una già esistente, in modo da creare un array di strutture, è sufficiente utilizzare il nome della struttura con l indice dell array che si sta creando; Questo processo espande l array; Es: studente(2).nome = Antonio ; studente(2).cognome = Bianchi ; studente(2). = [email protected] ; studente(2).voti = [22,27,25, ]; size(studente) ans = array di 2 strutture length(studente) ans = 2 2 strutture
5 Accesso ai campi Accesso al contenuto di campo di una struttura: nomestruttura.nomecampo Accesso al contenuto di campo della struttura i- esima: nomestruttura(i).nomecampo Accesso alla struttura i-esima e all elemento j-esimo di un campo che a sua volta è un array: nomestruttura(i).nomecampo(j)
6 Funzioni notevoli per la gestione degli array di strutture Funzione names = fieldnames(s) F = getfield(s, field ) F = getfield(s,{i,j}, field,{k}) isfield(s, field ) isstruct(s) S = rmfield(s, field ) S = setfield(s, field,v) S=setfield(S,{i,j}, field,{k}, V) Descrizione Registra nel vettore names i nomi dei campi dell array di strutture S Restituisce il contenuto del campo field della struttura S. Equivale a F=S.field Equivale a F = S(i,j).field(k) Restituisce 1 se field è il nome di un campo dell array di strutture S; altrimenti fornisce il valore 0 (zero) Restituisce 1 se S è un array di strutture, 0 se non lo è Elimina il campo field dall array di strutture Assegna il valore V al campo field della struttura S. Equivale a S.field=V Equivale a S(i,j).field(k) = V
7 Lettura File di Formato Standard >> help FILEFORMATS Formato dei dati MAT - MATLAB workspace Comando load Struttura dati restituita Variables in file CSV - Comma separated numbers DAT - Formatted text csvread importdata Double array Double array DLM - Delimited text dlmread Double array TAB - Tab separated text dlmread Double array XLS - Excel worksheet TIFF - TIFF image PNG - PNG image xlsread imread imread Double array and cell array. Truecolor, grayscale or indexed image(s). Truecolor, grayscale or indexed image.
8 Accesso a file di dati di formato non standard Prima di essere letto o scritto un file deve essere aperto; fid = fopen(filename) apre filename per l accesso; Se non è specificato il path, il file viene cercato nella directory corrente o nei percorsi specificati in MATLABPATH; fid = fopen(filename,permission) apre filename nella modalità indicata da permission: permission può assumere i seguenti valori 'r' lettura 'w' scrittura (crea il file se necessario) 'a' appende (crea il file se necessario) Al termine della lettura/scrittura il file deve essere chiuso: fclose(fid);
9 fscanf: Funzione di lettura file [A,count] = fscanf(fid,format,size) legge i dati dal file identificato da fid e li converte nel formato specificato da format I dati sono restituiti nell array A; count è una variabile di uscita opzionale che restituisce il numero di elementi letti con successo; size è una variabile d ingresso opzionale che indica il numero di elementi che possono essere letti, per default viene considerato tutto il file, altrimenti: N legge al massimo N elementi in un vettore colonna; inf legge fino alla fine del file; [M,N] legge al massimo M x N elementi riempiendo almeno una matrice M x N, in ordine di colonna; N può essere inf, ma non M.
10 Principali formati %n (%kn) %d (%kd) %u (%ku) %f (%kf) %s (%ks) %c (%kc) Legge un numero float o intero (fino a k cifre o fino al successivo delimitatore). Restituisce un double array. Legge un intero con segno (fino a k cifre o fino al successivo delimitatore). Restituisce un double array. Legge un valore intero senza segno (fino a k cifre o fino al successivo delimitatore). Restituisce un double array. Legge un floating point (fino a k cifre o fino al successivo delimitatore). Restituisce un double array. Legge una stringa delimitata da spazi, dove per ogni token corrisponde un %s (fino a k caratteri o fino al successivo delimitatore). Resituisce una cella contenente una stringa. Legge un carattere o un delimitatore (fino a k caratteri compreso i delimitatori). Restituisce un array di caratteri.
11 Esempi di lettura matrice.txt 3 fp = fopen('matrice.txt','r'); A = fscanf(fp, %d ); A = [ ] A = fscanf(fp, '%d', [2,1]); A = A = fscanf(fp, %d,[3,3]) A = A = fscanf(fp, '%d', [3,2]); A = fclose(fp)
12 textread: Lettura di un file di testo Se un file contiene informazioni testuali (ASCII) è preferibile usare la funzione textread; [A,B,C,...] = textread(filename,format,n); Legge i dati da filename nel formato format e li scrive nei vettori colonna variabili A,B,C, - N è un parametro opzionale che indica il numero delle volte che il formato format deve essere usato; - Se N è vuoto o = -1 textread legge tutto il file; Con textread non è necessario aprire e chiudere il file.
13 Esempio di lettura di un file di testo Mario Rossi 27 Gino Bianchi 24 Maria Verdi 26 dati.txt [nome, cognome, voto] = textread('dati.txt','%s%s%d'); %Memorizzazione dei dati contenuti negli array nome, cognome, voto, in %un vettore di strutture stud di campi nome, cognome, voto stud = struct( nome,[], cognome,[], voto,[]); for i=1:length(nome) stud(i) = struct( nome,nome(i), cognome,cognome(i), voto,voto(i)); end
14 fprintf: Scrittura su un file count = fprintf(fid,format,a,...) converte i dati della matrice A nel formato indicato da format, e li scrive sul file associato all identificatore fid. count rappresenta il numero di byte scritti con successo.
15 Esempio di scrittura su file x = 0:.1:1; y = exp(x); fid = fopen('exp.txt','w'); fprintf(fid,'%6.2f %12.8f\n',y); fclose(fid); Crea un file di testo di nome exp.txt contenente i valori x e y della funzione esponenziale exp(x)
Fondamenti di Informatica
Fondamenti di Informatica Gestione dei File in MATLAB Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Gestione dei file in MATLAB OUTLINE Caratteristiche
Fondamenti di Informatica
Fondamenti di Informatica Prof. Arcangelo Castiglione A.A. 2016/17 OUTLINE Caratteristiche dei File Apertura/Chiusura dei File Scrittura/Lettura dei File Importare Dati da File I File 1/2 I file possono
FONDAMENTI DI INFORMATICA. Prof. Alfredo Accattatis Tutor : Prof. Venturino Taggi
FONDAMENTI DI INFORMATICA Prof. Alfredo Accattatis [email protected] Tutor : Prof. Venturino Taggi [email protected] 2 Strutture dati: cenni Una struttura dati è una raccolta di dati organizzati
MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA
MATLAB I/O Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA Funzione input valore = input( inserisci un valore ); Matlab stampa a video la stringa inserisci un valore ed aspetta di ricevere
Gestione dei file in C
Gestione dei file in C Fondamenti di Informatica Che cos è un file e a cosa serve? Memoria di massa vs memoria centrale q La memoria di massa (disco fisso) è un dispositivo di memorizzazione generalmente
Funzioni matlab per la gestione dei file. Informatica B Prof. Morzenti
Funzioni matlab per la gestione dei file Informatica B Prof. Morzenti File Contenitori di informazione permanenti Sono memorizzati su memoria di massa Possono continuare a esistere indipendentemente dalla
Scrittura formattata - printf
Esercizi su Input/Output con formato FormattedIO 1 Scrittura formattata - printf Funzione printf int printf ( , ) La funzione restituisce un valore intero uguale ai caratteri
File binari e file di testo
I file File binari e file di testo distinzione tra file binari file di testo si possono usare funzioni diverse per la gestione di tipi di file diversi Programmazione Gestione dei file 2 File binari e file
Matlab: Gestione avanzata dei file
Matlab: Gestione avanzata dei file Informatica B File 2 Contenitori di informazione permanenti Sono memorizzati su memoria di massa Possono continuare ad esistere indipendentemente dalla vita del programma
LabVIEW parte II. Ing. Gianfranco Miele November 3, 2010
Ing. Gianfranco Miele ([email protected]) http://www.docente.unicas.it/gianfranco_miele November 3, 2010 Le stringhe Una stringa è una sequenza di caratteri Ogni carattere ha una corrispondente codifica
Introduzione a Matlab
Stringhe (1) Una stringa è un array di caratteri. Un array di stringhe è una matrice di caratteri, ma le matrici devono essere rettangolari, perciò si devono aggiungere degli spazi alla fine delle stringhe
Gestione dei files. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Via Leopardi 132
Gestione dei files Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Via Leopardi 132 Struttura del disco fisso Un disco fisso è composto da una serie di piatti sovrapposti Ogni piatto è
Data Import e Probabilità. Renato Mainetti
Data Import e Probabilità Renato Mainetti Importare dati in Matlab: Abbiamo visto come sia possibile generare array e matrici di dati. Per ora abbiamo sempre inserito i dati manualmente o utilizzando metodi
Comandi di Input/Output in Matlab
Comandi di Input/Output in Matlab Il comando format controlla la configurazione numerica dei valori esposta da MAT- LAB; il comando regola solamente come i numeri sono visualizzati o stampati, non come
Operatori Relazionali in MATLAB. Logica e relazioni
Logica e relazioni Operatori Relazionali in MATLAB Operatori relaizonali Vettori logici e indirizzamento Operatori logici Funzioni logiche (find, ecc ) A operatore B A e B possono essere: Variabili, costanti
Strutture dati e loro organizzazione. Gabriella Trucco
Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi
Fondamenti di Informatica
Fondamenti di Informatica Introduzione a MATLAB Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Introduzione a MATLAB Avviso per le Prossime Lezioni
Linguaggio C: i file
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica A - GES Prof. Plebani A.A. 2006/2007 Linguaggio C: i file La presente dispensa e da utilizzarsi ai soli fini didattici previa
IL CONCETTO DI FILE. È illecito operare oltre la fine del file.
IL CONCETTO DI FILE Un file è una astrazione fornita dal sistema operativo, il cui scopo è consentire la memorizzazione di informazioni su memoria di massa. Concettualmente, un file è una sequenza di registrazioni
Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab
Metodi di Analisi dei Dati Sperimentali AA /2010 Pier Luca Maffettone Elementi di Matlab Sommario Introduzione Variabili Manipolazione di elementi Creazione di vettori/matrici Operazioni elementari Funzioni
Confronto tra stringhe. (modulo) Calcolo della media e della varianza. Ecco un elenco di codici Matlab: - Calcolo valore assoluto (modulo)
Ecco un elenco di codici Matlab: - Calcolo valore assoluto (modulo) - Calcolo media e varianza - Concatenare stringhe e conversione da numero a stringa - Numero di Eulero - Modificare un file fig in Matlab
Laboratorio di Matlab
Laboratorio di Matlab Rudy Manganelli Dipartimento di Ingegneria dell Informazione, Università di Siena [email protected] http://www.dii.unisi.it/ control/matlab/labmatlab.html Luglio 2008 DII -
Matlab/Octave - Esercitazione 14
Facoltà di Ingegneria Industriale MATLAB/Octave Laurea in Ingegneria - Esercitazione Energetica, 14 Meccanica e dei Trasporti Matlab/Octave - Esercitazione 14 ricorsione funzioni anonime (variabili funzionali
Introduzione alla programmazione in linguaggio C
Introduzione alla programmazione in linguaggio C Il primo programma in C commento Header della libreria Funzione principale Ogni istruzione in C va terminata con un ; Corso di Informatica AA. 2007-2008
Introduzione al MATLAB c Parte 3 Script e function
Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell
Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017
Scuola di Calcolo Scientifico con MATLAB (SCSM) 2017 Palermo 24-28 Luglio 2017 www.u4learn.it Variabili I/O dei Dati, Interazione I/O con l Utente Arianna Pipitone Funzioni con numero di input variabile
ESERCITAZIONE MATLAB
ESERCITAZIONE MATLAB Di seguito sono ripostati alcuni esercizi da eseguire in ambiente MatLab. Gli esercizi sono divisi per argomenti. Ogni esercizio è preceduto da una serie di esempi che aiutano nello
