Imparare SAS. Gianluca Della Vedova. Dipartimento di Statistica Università di Milano-Bicocca

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Imparare SAS. Gianluca Della Vedova. Dipartimento di Statistica Università di Milano-Bicocca"

Transcript

1 Imparare SAS Gianluca Della Vedova Dipartimento di Statistica Università di Milano-Bicocca Versione del 21 novembre 2003

2 Nota Bene. Questo testo non sostituisce in alcun modo il libro di testo del corso Laboratorio Statistico-Informatico, inoltre il programma del corso potrebbe non coincidere con il contenuto del presente testo. Copyright (c) Gianluca Della Vedova è garantito il permesso di copiare, distribuire e/o modificare questo documento seguendo i termini della Licenza per Documentazione Libera GNU, Versione 1.1, pubblicata dalla Free Software Foundation; con Sezione Non Modificabile Ringraziamenti, con i Testi Copertina Gianluca Della Vedova e Imparare SAS, e senza Testi di Retro Copertina. Una copia della licenza è acclusa nella sezione intitolata Licenza per Documentazione Libera GNU.

3 Indice 1 Introduzione Prefazione Convenzioni tipografiche La vera introduzione I fondamenti I linguaggi di programmazione Istruzioni condizionali Schema di ciclo produttivo Il sistema Sintassi basilare Il dataset Relazione fra dataset e filesystem SAS come linguaggio di programmazione Le librerie Operazioni fondamentali su dataset Creare un dataset Leggere e salvare un dataset Esportare un dataset Creare e cancellare variabili Visualizzare un dataset Variabili indicizzate Estrarre osservazioni da un dataset Istruzioni condizionali Ancora operazioni su dataset Introduzione Inserire i dati Array Ordinare un dataset Raggruppare osservazioni in un dataset Ristrutturare dataset Stampare i dati Riepilogo Calcolare delle statistiche Estrazione di osservazioni significative Altre statistiche Creare un dataset con le statistiche

4 5 Rappresentazioni grafiche La proc plot La proc gplot Una migliore rappresentazione testuale Dai dati alle informazioni Analisi delle frequenze La proc corr Tabelle a 2 entrate Analisi di regressione Grafico di regressione Esercizi riepilogativi 51 8 Soluzioni degli esercizi 53 Elenco dei problemi 55 Elenco dei programmi 56 Elenco delle figure 57 Indice analitico 58 9 Licenza per Documentazione Libera GNU 59

5 Introduzione 1.1 prefazione Questo libro vuole essere una semplice introduzione a SAS per chi non conosce un linguaggio di programmazione. In quanto tale è adatto all utilizzo in un corso universitario semestrale. I prerequisiti consistono unicamente nella capacità di usare un elaboratore, in quanto si cercherà di trattare gli argomenti in maniera indipendente dal sistema operativo su cui SAS è installato. SAS r e SAS/GRAPH r sono marchi registrati di SAS Institute Inc. 1.2 convenzioni tipografiche Per distinguere un programma SAS anche quando è inserito nel testo, questo sarà scritto nel carattere macchina da scrivere. Le parole riservate di SAS saranno sempre scritte in maiuscolo, ovvero QUESTO è un comando riservato di SAS. I concetti che vengono definiti saranno invece scritti in corsivo. Talvolta nel margine esterno appariranno alcuni approfondimenti. Ogni programma viene scritto in un modo particolare: ogni riga viene preceduta da un numero progressivo scritto con un carattere più piccolo del testo che segue. Tale numero serve solo come riferimento e non è parte del programma vero e proprio. Ogni programma inizia con una intestazione e termina con una riga orizzontale, per meglio separarlo dal testo. 1.3 la vera introduzione Imparare un linguaggio di programmazione non è semplice, ed imparare il primo linguaggio di programmazione è ancora più difficile, ma il fatto che molte persone decidano (con successo) di imparare a programmare fà capire che tale compito è sicuramente alla portata di tutti. SAS è un linguaggio molto particolare, in quanto è stato studiato per l analisi statistica di dati. Le finalità specialistiche di SAS hanno comportato una serie di scelte nella fase di disegno del linguaggio che lo rendono completamente diverso da tutti gli altri linguaggi di programmazione. Questo libro non intende essere una guida all uso avanzato di SAS, ma vorrebbe guidare il lettore alla scoperta delle funzionalità basilari di SAS. In particolare si introdurranno inizialmente alcuni costrutti fondamentali, per poi arricchire progressivamente le conoscenze del lettore con approfondimenti continui ed esercitazioni pratiche sotto forma di problemi. Quest ultima parte mi sembra fondamentale al fine di imparare SAS: il paragone più calzante è con l imparare a suonare uno strumento, magari il pianoforte. Sicuramente è molto più difficile suonare il pianoforte che programmare in SAS, anche perchè SAS cerca di essere sempre più semplice da usare con il passare del tempo, mentre il pianoforte non è cambiato sostanzialmente negli ultimi decenni. Però chi impara a suonare il pianoforte si appoggia ad un insegnante che sfrutta secoli di esperienze di insegnamenti impartiti dal suo insegnante, da chi ha istruito il suo insegnante, ecc. Questo non è possibile per l insegnamento di un linguaggio di programmazione, poichè fino a 50

6 6 Introduzione anni fa non esistevano (in pratica) linguaggi di programmazione: la conseguenza è che insegnare a programmare è ancora un arte che non ha regole prestabilite. Il paragone con il pianoforte porta a comprendere come l esercizio continuo e controllato da parte dell insegnante sia il modo migliore per imparare qualcosa di nuovo: in questo caso SAS. Per questo motivo troverete una serie di esercizi da svolgere: tutti questi esercizi vengono risolti nel modo preferito dall autore, non si vuole escludere la possibilità di soluzioni alternative, semplicemente si vuole garantire ad ognuno di poter seguire uno stile coerente in tutto il testo. Chi utilizza il linguaggio Perl è abituato a sentire la frase There s More Than One Way To Do It che è uno dei concetti simbolo di tale linguaggio. Questo permette una grande libertà e vantaggi indiscutibili per il programmatore esperto e fonte inesauribile di confusione per chi non ha ancora raggiunto una sufficiente esperienza.

7 2.1 i linguaggi di programmazione I fondamenti Una delle principali limitazioni dei calcolatori attuali è la loro incapacità di comprendere istruzioni impartite in un linguaggio naturale (siamo tutti talmente abituati a questo fatto da considerarlo inevitabile, in realtà un computer in grado di comprendere un linguaggio naturale permetterebbe di essere enormemente più produttivi). Pertanto diventa necessario ricorrere ad un linguaggio artificiale per impartire le istruzione al computer. In cambio di questo nostro adattamento al linguaggio da utilizzare, il computer ci ricompenserà con la sua capacità di effettuare calcoli con una velocità e affidabilità non possibili per gli esseri umani. In generale i linguaggi di programmazione devono soddisfare due esigenze contrastanti: essere sufficientemente vicini ad un linguaggio naturale, in modo da rendere più semplice scrivere un programma, ed essere sufficientemente vicini ad un codice eseguibile direttamente dal calcolatore. Per ovviare a questo problema sono stati introdotti i compilatori, ovvero programmi che si occupano di tradurre un programma scritto in uno specifico linguaggio di programmazione in codice eseguibile. Questo ha portato alla possibilità di utilizzare linguaggi di programmazione molto più vicini ad un linguaggio naturale di quanto non fosse possibile pochi decenni fa. Per fortuna SAS è un linguaggio di programmazione che cerca di essere il più possibile vicino ad un linguaggio naturale, ma comunque sarà necessario comprendere come comportarsi per sfruttare pienamente le potenzialità del linguaggio. Esistono almeno tre tipologie di linguaggi di programmazione: i linguaggi imperativi, dove un programma consiste nelle istruzioni dettagliate su come completare un assegnamento. Rientrano in questa categoria C, C++, Basic, Pascal, Java e le ricette per la cucina. i linguaggi dichiarativi, dove un programma è l insieme di ciò che deve essere ottenuto. Esempi di questo tipo di linguaggi sono SQL e gli ordini ( Leggi questo libro e scrivine un riassunto ). i linguaggi funzionali, dove un programma viene visto come funzione che ha per argomento un insieme di dati e restituisce il risultato voluto. Esempi di linguaggi funzionali sono Lisp e Scheme. Il vantaggio dei linguaggi dichiarativi rispetto a quelli imperativi è che i programmi sono molto più sintetici e semplici da comprendere e modificare. Lo svantaggio consiste nel fatto che l interprete del programma deve essere notevolmente più complesso, in quanto deve sapere come effettuare i compiti richiesti (ad esempio, riferendosi all esempio fatto in precedenza, deve sapere leggere un libro, estrarre le informazioni ivi contenute e sintetizzarle efficacemente). SAS è sostanzialmente un linguaggio in parte imperativo ed in parte dichiarativo, ad esempio l interprete sa come calcolare numerose statistiche di un insieme di valori, ma il programmatore deve occuparsi di indicare esplicitamente su quali valori devono essere calcolate le statistiche. Come vedremo in

8 8 I fondamenti VERO Condizione FALSO Istruzione 1 Istruzione 2 Figura 2.1: Schema di istruzione condizionale seguito le componenti dichiarative sono particolarmente potenti e semplici da utilizzare, maggiore difficoltà presentano la parti imperative. 2.2 istruzioni condizionali Una caratteristica della quasi totalità dei risultati che possiamo volere ottenere è che non tutti i dati in ingresso devono essere trattati ugualmente: ad esempio siamo interessati soltanto alle filiali che hanno ottenuto almeno un fatturato di EUR Questo tipo di distinzione viene efficacemente riassunta dalla Figura 2.1, dove Istruzione 1 viene eseguita se la condizione è verificata, ed esegue Istruzione 2 altrimenti. Diventa quindi possibili dividere una istruzione condizionale in più componenti come segue: 1. la condizione, ovvero un predicato logico che può assumere solo due valori, vero o falso; 2. una istruzione che permette di determinare quale istruzione deve essere eseguita immediatamente dopo la valutazione della condizione Tale istruzione è solitamente la if condizione then... else. La semantica di tale istruzione è: valuta la condizione, se tale condizione è vera allora esegui le istruzioni scritte subito dopo then, altrimenti esegui le istruzioni scritte subito dopo else. Il fulcro di tale costrutto è pertanto la condizione, per cui ci sembra necessario avere a disposizione uno strumento sufficientemente potente per esprimere condizioni almeno moderatamente complesse. La nozione di condizione permette di decidere quali istruzioni debbano essere eseguite. Più precisamente una condizione può assumere solo due valori, vero o falso. Alcuni operatori (detti operatori logici o booleani) agiscono sulle condizioni: si tratta degli operatori not, and, or. Gli effetti di tali operatori sono mostrati nella Tabella 2.1.

9 2.3 Schema di ciclo produttivo 9 x y NOT(x) x AND y x OR y x NAND y falso falso vero falso falso vero falso vero vero falso vero vero vero falso falso falso vero vero vero vero falso vero vero falso Tabella 2.1: Semantica degli operatori booleani 2.3 schema di ciclo produttivo Sotto il nome di SAS intendiamo più componenti (o strumenti), integrati fra loro, per l analisi statistica di dati. In particolare SAS è un sistema per l analisi di dati che incorpora, fra le altre cose, un editor che permette di scrivere programmi SAS nel linguaggio SAS. Tale programma verrà poi interpretato ed eseguito dal sistema SAS. Tutte queste componenti sono integrate in quello che verrà chiamato d ora in poi semplicemente SAS. L obiettivo è la scrittura di un programma in grado di risolvere un problema: non esistono regole fisse e predeterminate, inoltre non è possibile scrivere un programma corretto senza prima riflettere adeguatamente sul problema da risolvere (il fatto che programmatori esperti siano in grado scrivere in tempi brevissimi un programma SAS corretto, non deve trarre in inganno chi si affaccia per la prima volta alla programmazione: ciò è possibile solo grazie alle funzionalità del linguaggio SAS che permette di descrivere con poche istruzioni programmi in grado di risolvere problemi non banali). Pertanto diventa di fondamentale importanza la fase di analisi del problema. Una delle tecniche più utilizzate per la progettazione è la cosiddetta top-down, dove il problema viene diviso in componenti distinte che sono collegate fra loro solo attraverso interfacce ben definite. Ogni progetto software si divide, almeno in prima approssimazione, in tre fasi: 1. Progettazione 2. Implementazione 3. Manutenzione Si è notato che è necessario affrontare con attenzione la fase di progettazione al fine di minimizzare il costo totale del progetto. Pertanto diventa necessario analizzare accuratamente il problema da risolvere prima di iniziare con l implementazione vera e propria. 2.4 il sistema Una delle caratteristiche più importanti di SAS è che il sistema SAS è disponibile per svariati sistemi operativi e piattaforme hardware. Infatti SAS è nato come applicazione su mainframe, ma successivamente è stato portato prima su UNIX 1 e su VMS, ed infine su Microsoft Windows 2. Pertanto SAS è disponibile su sistemi che variano dai 1 Nel 2001 UNIX è un copyright di Santa Cruz Operations (SCO), Inc. 2 Microsoft Windows è un marchio registrato di Microsoft Corp., Inc.

10 10 I fondamenti Progetto Scrittura (editor) Test (esecuzione) Il programma è corretto? no sì FINE Figura 2.2: Come si sviluppa un programma viene interpretato da Programma usato scrivere per Interprete Editor Sistema SAS Figura 2.3: Schema riassuntivo del sistema SAS

11 2.5 Sintassi basilare 11 personal computer ai mainframe, inclusi vari minicomputer ed enterprise server quali quelli prodotti da Sun Microsystems r, Hewlett-Packard r, IBM r ed altri. Per rendere possbile l utilizzo industriale su tutte questi sistemi operativi, è stato necessario isolare tutte le componenti dipendenti dal sistema operativo dell implementazione iniziale di SAS, al fine di slegare dal particolare ambiente di utilizzo tutte le funzionalità del linguaggio SAS. Ciò che varia sostanzialmente fra i vari sistemi operativi è l ambiente (sia grafico che a caratteri) che è a disposizione dell utente per scrivere i programmi SAS e introdurre i dati da analizzare. Comunque il linguaggio SAS è completamente indipendente dal sistema operativo: ciò ne rende ancora più semplice l esposizione. Per quanto riguarda lo scopo di questo testo, è sufficiente notare che l ambiente SAS consiste di alcune componenti fra loro collegate: Il Program editor o l enhanced editor: permette di introdurre, modificare ed eseguire un programma SAS. È consigliato prendere confidenza con l uso del program editor, in quanto è la componente del sistema SAS che viene utilizzato per maggior tempo. In particolare è necessario capire come mandare in esecuzione un programma intero oppure solo una parte del programma, come salvare un programma SAS e l utilizzo dei tasti funzione per muoversi fra le finestre e per richiamare il programma precedentemente mandato in esecuzione. L output contiene tutti i risultati in formato testuale di un programma SAS. Le Finestre grafiche (sui sistemi che le supportano) contengono i risultati in formato grafico calcolati dal programma SAS. Il Log contiene una copia annotata del programma eseguito. Più precisamente per ogni istruzione eseguita viene evidenziata ogni anomalia che si è venuta a verificare durante l esecuzione. L analisi del log è di gran lunga lo strumento più utile per individuare gli errori nei programmi SAS. L help contiene le informazioni riguardanti tutte le funzionalità presenti nella installazione di SAS a disposizione. Vista la vastità della documentazione presente, diventa improponibile avere una copia cartacea di tutte le informazioni presenti nell help. Per le stesse ragioni è abbastanza frequente non ricordarsi la sintassi esatta di alcune funzioni che si vogliono utilizzare: l help di SAS è fondamentale per superare questi problemi. Un altra particolarità di SAS consiste nella sua suddivisione in moduli: infatti al cosiddetto modulo base (in cui si trovano tutte le funzionalità che tratteremo in questo testo) sono disponibili numerosi moduli che permettono di utilizzare nuove funzionalità avanzate. 2.5 sintassi basilare Un linguaggio di programmazione deve essere tradotto in maniera non ambigua in azioni che il computer deve svolgere: ciò fà sì che non sia possibile utilizzare un linguaggio naturale come la lingua italiana o quella inglese, ma che sia necessario utilizzare un linguaggio molto più semplice. In particolare ogni istruzione SAS viene terminata dal simbolo di punto e virgola ;, con l eccezione dei commenti.

12 12 I fondamenti I commenti sono l istruzione più importante di ogni linguaggio di programmazione. Non è uno scherzo: un programma che non sia adeguatamente commentato diventa incomprensibile anche per l autore, a maggior ragione per chi debba modificare un programma scritto da altri. Un commento inizia con la coppia di simboli /* e termina con la coppia di simboli */. Un esempio di commento è presente nel Programma 2.1. Programma 2.1: Esempio di commento 1 /* 2 * Questo è un commento valido 3 * 4 */ 2.6 il dataset Come già detto in precedenza SAS è stato studiato per effettuare analisi statistiche di dati, ma non abbiamo ancora detto che cosa intendiamo per dato. Definizione (Dato). Un dato è un unità atomica di informazione. Un numero telefonico, oppure un nome sono esempi di dati. Secondo la definizione che abbiamo appena introdotto i dati in un insieme potrebbero apparire completamente scorrelati fra loro, tuttavia questo insieme di dati potrebbe contenere informazioni non visibili immediatamente. Questo fatto, insieme con la vastità dei dati usualmente disponibile, comportano la necessità di affrontare un analisi statistica dei dati con adeguati strumenti computazionali. Lo strumento computazionale che tratteremo sarà, come è immaginabile, SAS. Affinchè i dati siano trattabili con SAS essidevono essere memorizzati in un formato predeterminato: quello tabellare, dove ogni colonna è una categoria diversa. In Figura 2.6 si trovano alcuni dati demografici riguardanti le regioni italiane. Come si può notare i dati sono organizzati secondo una struttura rigida: ogni colonna corrisponde ad una categoria o variabile, per cui le colonne contengono dati omogenei. Analogamente ogni riga consiste in una osservazione, ovvero tutti i dati che riguardano una unità analizzata. In questo caso specifico ogni osservazione corrisponde ad una regione. È di fondamentale importanza notare che SAS opera sempre su dataset Definizione (Dataset). Una tabella con dati organizzati su colonne (variabili) e righe (osservazioni) viene detta dataset. Quando SAS esegue delle operazioni su un dataset, tale dataset viene visitato (ed i dati ivi contenuti vengono utilizzati) in un ordine ben preciso, ovvero: 1. una osservazione alla volta, iniziando dalla prima e terminando con l ultima ( riga dopo riga );

13 2.7 Relazione fra dataset e filesystem 13 Variabile 1 Variabile 2 Variabile 3 Regione Abitanti Superficie Osservazione 1 Piemonte Osservazione 2 Valle d Aosta Osservazione 3 Liguria Osservazione 4 Lombardia Osservazione 5 Trentino Alto Adige Osservazione 6 Veneto Osservazione 7 Friuli Venezia Giulia Osservazione 8 Emilia-Romagna Osservazione 9 Toscana Osservazione 10 Marche Osservazione 11 Umbria Osservazione 12 Lazio Osservazione 13 Abruzzo Osservazione 14 Molise Osservazione 15 Campania Osservazione 16 Puglia Osservazione 17 Basilicata Osservazione 18 Calabria Osservazione 19 Sicilia Osservazione 20 Sardegna Figura 2.4: Esempio di dataset: popolazione e superficie delle regioni italiane 2. ogni osservazione viene letta una variabile alla volta, iniziando dalla prima e terminando con l ultima (ogni osservazione viene letta da sinistra a destra ). Talvolta è molto utile sfruttare il fatto che ogni dataset viene visitato in questo ordine. 2.7 relazione fra dataset e filesystem Nella sezione precedente è stato evidenziato come i dati in SAS siano organizzati logicamente sotto forma di dataset, ma non è stato specificato come tali dataset siano memorizzati. Una prima osservazione è che non è ragionevole pensare che un dataset sia sempre presente interamente in memoria centrale (RAM), in quanto SAS viene utilizzato in ambienti industriali dove i dataset analizzati possono avere milioni di osservazioni per alcune decine di variabili, ad esempio si consideri un dataset contenenti tutti i dati di vendita di un supermercato. Pertanto diventa necessario salvare i dataset su disco (o altra unità di memorizzazione adatta) e questo è uno dei compiti che il sistema SAS svolge automaticamente a patto che venga specificato il nome con cui salvare il dataset (come specificare il nome sarà spiegato più avanti). Ogni dataset viene salvato in un formato proprietario di SAS, tipicamente in un file con estensione.sd2, che non può essere ispezionato manualmente. Conseguentemente un problema è quello di interfacciarsi con fonti di dati

14 14 I fondamenti preesistenti che tipicamente consistono in file testuali opportunamente formattati, che possono avere una qualunque estensione. Bisogna pertanto fare attenzione e distinguere il concetto di dataset, che è interno a SAS, dal concetto di dataset salvato su file (che a sua volta è un concetto tipico di SAS) dal file che contiene dati trasformabili in un dataset. Quest ultimo concetto non è esclusivo di SAS: infatti spesso tali dati vengono generati o elaborati da altre applicazioni (nel caso di dati di un supermercato vengono generati dal programma di gestione del magazzino). 2.8 sas come linguaggio di programmazione Nella sezione precedente abbiamo introdotto il concetto di dataset, ma non abbiamo ancora detto come gestire tale dataset. In effetti SAS dispone di un linguaggio di programmazione (che chiameremo linguaggio SAS disegnato specificatamente per il trattamento di dataset. I costrutti del linguaggio SAS possono essere divisi in due (sotto-)linguaggi: linguaggio per la manipolazione dei dati; linguaggio per la estrazione di informazione dai dati. Il primo linguaggio comprenderà quindi tutte le istruzioni necessarie per creare, salvare e caricare un dataset, mentre il secondo linguaggio contiene le istruzioni necessarie, ad esempio, a calcolare la media dei valori contenuti in una variabile del dataset. 2.9 le librerie I dataset sono organizzati in librerie, che è un insieme di dataset. Normalmente è desiderabile potere salvare (e successivamente riutilizzare) i dataset su cui si sono effettuate alcune elaborazioni, anche se ciò non è vero per tutti i dataset. Per facilitare tale distinzione esiste una libreria particolare: la libreria WORK. Ogni dataset nella libreria WORK viene considerato temporaneo e quindi non viene salvato. I dataset temporanei vengono contrapposti a quelli permanenti, che sono quelli che appartengono ad una libreria diversa da WORK: i dataset permanenti vengono automaticamente salvati dopo ogni operazione. Una operazione fondamentale, spesso la prima di ogni programma, è quindi la scelta della libreria che viene utilizzata: tale operazione prende il nome di libref, e si realizza tramite la LIBNAME come riportato nel programma 2.2. Programma 2.2: Esempio di libref 1 LIBNAME libreria c:\desktop Il comando LIBNAME richiede due argomenti: il primo è il nome che si desidera associare alla libreria, il secondo è la locazione nel filesystem della libreria. Quest ultima è una delle rare occasioni in cui un programma SAS è dipendente dal sistema operativo su cui deve essere eseguito.

15 2.10 Operazioni fondamentali su dataset 15 Osservazione: Anche se è possibile scrivere un espressione che effettui la stessa operazione su diversi sistemi operativi, trattare tale espressione è fuori dallo scopo di questo libro operazioni fondamentali su dataset Le componenti di un programma SAS possono essere suddivise in due categorie: I data step, dove il dataset viene costruito o modificato. I data step consistono di tutte le operazioni di modifica dei dati. I proc step, costituiscono le istruzioni dove i dati vengono analizzati e dove le statistiche richieste vengono calcolate. In questa sezione ci dedicheremo alla descrizione dei data step. Come si può immaginare ogni data step inizia con la istruzione DATA, dove l unico parametro è il nome del dataset su cui si va ad operare. Il programma 2.3 legge un dataset chiamato regioni, appartenente alla libreria libro che a sua volta si trova nella directory c:\desktop. Utilizzeremo questa libreria per tutti gli esempi in questo libro. L istruzione DATA fà sì che il dataset su cui agire sia regioni2, mentre la successiva SET impone che regioni sia il dataset che fornisce i dati su cui lavorare (ma tale dataset viene soltanto letto, non si effettua nessuna operazione su regioni). L istruzione RUN termina il data step e serve ad evitare eventuali ambiguità sulla suddivisione fra le varie sezioni del programma. Una nota esplicativa si rende necessaria: SAS è un linguaggio interpretato, ovvero al momento dell esecuzione il sistema SAS si occupa di eseguire ogni singola istruzione del programma. Il sistema interpreta una RUN come la fine della procedura che stà attualmente leggendo, per passare alla fase di esecuzione vera e propria. Non è necessario scrivere una RUN qualora la fine di una procedura non sia ambigua, ovvero quando la fine di una procedura sia immediatamente seguita dall inizio di un altra procedura. Comunque la presenza di RUN permette di separare meglio le diverse componenti del programma e quindi è consigliabile utilizzarla sempre. Programma 2.3: Copiare un dataset 1 /* 2 * Copia regioni -> regioni2 3 */ 4 libname libro c:\desktop ; 5 data libro.regioni2; 6 set libro.regioni; 7 run; La prima operazione su un dataset è chiaramente la sua creazione. Poichè un dataset è un oggetto che gode di vita propria diventa fondamentale decidere un nome per tale dataset. La scelta del nome per una libreria, così come per un dataset, deve

16 16 I fondamenti essere ispirata da criteri di semplicità e chiarezza: in altre parole è preferibile utilizzare nomi brevi ma esplicativi e non ambigui. Seguendo queste indicazioni libro e regioni sono scelte adeguate, mentre regioni2 o nomelungoesenzasenso sono opinabili. In realtà la SET può indicare più dataset (ma tutti con la stessa struttura): in tal caso l operazione che si effettua è la fusione dei dataset, in quanto vengono copiate tutte le osservazioni presenti nei dataset di ingresso creare un dataset Non sempre è possibile lavorare su dati preesistenti, ma è necesario creare da zero il dataset. In questo caso le operazioni di cui dobbiamo occuparci sono: scegliere la libreria di cui il dataset dovrà fare parte, e quindi individuare la locazione fisica del dataset scegliere il nome del dataset Una volta effettuate queste due operazioni sarà SAS ad occuparsi di salvare i dati contenuti nel dataset quando necessario (ad esempio al termine dell esecuzione del programma). Il problema successivo da risolvere è quello della memorizzazione di dati nel dataset. Chiaramente il dataset appena creato non contiene dati (come potrebbe essere altrimenti? Abbiamo soltanto specificato la libreria ed il nome del dataset.) pertanto diventa fondamentale avere un insieme di comandi che permettano l inserimento di dati. In particolare due aspetti riguardanti i dati che dovranno essere rappresentati dal dataset devono essere trattati: la strutturazione del dataset in variabili e l elenco delle osservazioni. L elenco delle variabili, e il tipo di ogni variabile viene definito tramite la INPUT. Tale istruzione richiede come argomenti l elenco dei nomi delle variabili, eventualmente seguite dal simbolo $ nel caso si tratti di variabili che devono contenere dati alfanumerici. Si presume quindi che una variabile sia destinata a memorizzare dati numerici, e si deve esplicitare quando questa assunzione non sia vera. L elenco delle osservazioni viene determinato utilizzando l apposita istruzione DATALINES a cui deve seguire l elenco delle osservazioni, con ogni osservazione su una riga a sè stante. L elenco delle osservazioni deve terminare con un punto e virgola. Ad esempio un programma per construire un dataset contenente nome. cognome, altezza e peso per un insieme di persone è presentato nel seguente programma. Siamo ora pronti per vedere un semplice problema che utilizzi le nozioni appena introdotte. Problema 1: inizializzazione. Scrivere un programma SAS che crei un dataset equivalente a quello rappresentato in Tabella 2.6. Il programma in grado di risolvere il problema sarà chiaramente molto simile a quello descritto in precedenza leggere e salvare un dataset L esercizio svolto nella Sez ci permette alcune puntualizzazioni: i nomi di variabili non possono assolutamente essere scelti a caso, e diventa importante usare nomi descrittivi. Tale possibilità è stata facilitata nelle versioni recenti di SAS, portando la

17 2.12 Leggere e salvare un dataset 17 Programma 2.4: Definizione e inizializzazione di un dataset 1 libname libro c:\desktop ; 2 data libro.persone; 3 input nome $ cognome $ altezza peso; 4 datalines; 5 mario rossi elena bianchi ; 8 run; Programma 2.5: Dataset regioni: inizializzazione 1 libname libro c:\desktop ; 2 data libro.regioni; 3 input regione $ abitanti superfic; 4 datalines; 5 Piemonte Valle d Aosta Liguria Lombardia Trentino Alto Adige Veneto Friuli Venezia Giulia Emilia-Romagna Toscana Marche Umbria Lazio Abruzzo Molise Campania Puglia Basilicata Calabria Sicilia Sardegna ; 26 run; lunghezza massima di un nome di variabile da 8 a 32 caratteri quindi superficie non era un nome valido per una variabile). I limiti della procedura presentata sono due: il formato è fissato a priori (dati se-

18 18 I fondamenti Ovvero si possono usare sia Excel che OpenOffice (o StarOffice) su diversi sistemi operativi parati da spazi) ed i dati sono memorizzati nel programma, invece che su disco fisso. Quest ultimo è un problema particolarmente significativo, poichè i dati da gestire possono facilmente occupare troppo spazio perchè sia possibile memorizzarli nel programma (basti pensare ai dati storici di movimentazioni di conti correnti in un agenzia bancaria). A tal fine è possibile utilizzare l istruzione INFILE che richiede come argomento il file che contiene i dati da analizzare. Un formato particolarmente utilizzato per la memorizzazione e lo scambio di dati è il cosiddetto CSV (Comma-separated values) dove i dati vengono separati da virgole anzichè da spazi. Praticamente tutti i programmi per la gestione di fogli di calcolo possono esportare ed importare dati in questo formato, ciò lo rende un minimo comun denominatore per trattare dati indipendentemente dalla piattaforma software utilizzata. In realtà SAS fornisce un metodo che permette di utilizzare dati divisi da un carattere speciale, tramite la parola chiave DLM. Decidendo quale simbolo (compreso fra apici) debba delimitare i dati siamo in grado di leggere i dati in una vasto insieme di formati. Problema 2: Lettura formato CSV. Si legga il dataset delle regioni italiane dal file c:\desktop\regioni nel formato CSV Programma 2.6: Dataset regioni: lettura formato CSV 1 libname libro c:\desktop ; 2 data libro.regioni; 3 infile c:\desktop\regioni dlm=, ; 4 input regione $ abitanti superfic; 5 run; Senza questa opzione i dati sarebbero stati cercati nella riga successiva Una nuova opzione per la INFILE è MISSOVER. Questa opzione assume che i dati in ingresso siano sempre una osservazione per riga, nel caso in cui i dati su una riga non siano sufficienti per assegnare un valore ad ogni variabile, allora si assume che i dati che non sono presenti siano mancanti. Questa opzione è utile quando siamo in presenza di dati con non sono sempre con la stessa identica struttura, ma al tempo stesso non sono completamente privi di struttura. Un esempio lo si può vedere con il Problema 19 a pagina 51. Salvare un dataset in un file specificato è analogo a leggere lo stesso dataset: si tratta di specificare, tramite l istruzione FILE il nome del file su cui scrivere, oppure specificare il nome della libreria di cui il dataset è parte. Problema 3: salvataggio in libreria. Si legga il dataset delle regioni italiane dal file c:\desktop\regioni nel formato CSV e lo si memorizzi nel dataset regionifinte Problema 4: salvataggio in libreria. Si legga il dataset delle regioni italiane dal file c:\desktop\regioni nel formato CSV e lo si memorizzi nel file a:regionifinte esportare un dataset Normalmente i dataset SAS vengono salvati in un formato riservato che permette di massimizzare la velocità di accesso ai dati. Uno svantaggio di tale formato consiste nel

19 2.13 Esportare un dataset 19 Programma 2.7: Dataset regioni: salvataggio in libreria 1 libname libro c:\desktop ; 2 data libro.regionifinte; 3 set libro.regioni; 4 infile c:\desktop\regioni dlm=, ; 5 input regione abitanti superfic; 6 run; Programma 2.8: Dataset regioni: salvataggio in libreria 1 libname libro c:\desktop ; 2 data libro.regioni; 3 file a:libro.regionifinte ; 4 infile c:\desktop\regioni dlm=, ; 5 input regione abitanti superfic; 6 run; fatto che esso non è portabile su calcolatori diversi (o meglio, potrebbero esserci problemi se si cambia sistema operativo). Per avere un dataset in un formato indipendente dal sistema utilizzato è necessario esportare il dataset in formato ASCII. Le istruzioni per esportare un dataset sono speculari a quelle per importare: il file su cui salvare viene specificato con l istruzione FILE, mentre l elenco delle variabili da esportare, insieme con le opzioni che specificano il formato, vnegono specificate con l istruzione PUT. Problema 5: salvataggio in libreria. Si legga il dataset delle regioni italiane dal file c:\desktop\regioni nel formato CSV e lo si memorizzi, in formato ASCII con campi separati da spazi, nel file a:regionifinte.txt. Programma 2.9: Dataset regioni: salvataggio in libreria 1 libname libro c:\desktop ; 2 data libro.regioni; 3 infile c:\desktop\regioni dlm=, ; 4 file a:libro.regionifinte.txt ; 5 input regione abitanti superfic; 6 put regione abitanti superfic; 7 run;

20 20 I fondamenti 2.14 creare e cancellare variabili Finora abbiamo visto come creare un dataset, come leggere e scrivere i dati ivi contenuti, ma non abbiamo ancora visto come sia possibile modificare i dati, possibilmente rendendo esplicita dell informazione già presente nel dataset. Uno dei modi più semplici per ottenere questo risultato consiste nella creazione di una nuova variabile, il cui contenuto è ottenibile direttamente dal dataset originario. In SAS ciò corrisponde ad assegnare alla nuova variabile un operazione i cui argomenti sono altre variabili del dataset. A partire da questa sezione sfrutteremo una delle caratteristiche fondamentali dei data step: tutte le operazioni comprese in un data step vengono eseguite per ogni osservazione. Il seguente problema esemplifica la situazione, dove la riga 5 viene eseguita per ogni osservazione. Problema 6: calcolo densità abitativa. Dato il dataset delle regioni italiane, si aggiunga una variabile densità che memorizza il numero di abitanti per kilometro quadrato. Programma 2.10: Dataset regioni: calcolo densità abitativa 1 libname libro c:\desktop ; 2 data libro.regioni; 3 set libro.regionicomplete; 4 densita=abitanti/superfic; 5 run; La riga 5 è quella importante: il simbolo = suddivide il nome della nuova variabile (a sinistra) dall operazione che descrive come ottenere i dati da associare alla nuova variabile (dopo l uguale). Analogamente è possibile rimuovere una variabile da un dataset, tramite l operazione DROP che deve essere seguita dalla variabile (o dall insieme di variabili) da cancellare. Tale istruzione deve apparire all interno di un DATA step. Un istruzione che può essere utilizzata in alternativa alla DROP è KEEP: in questo caso solo le variabili indicate dopo KEEP vengono tenute nel dataset, mentre tutte le altre vengono eliminate visualizzare un dataset Nelle sezioni precedente è stato mostrato come memorizzare dati in un dataset, oltre ad alcune operazioni sugli stessi. Non abbiamo ancora visto come visualizzare il contenuto di un dataset, anche solo al fine di controllare se i programmi scritti siano in effetti corretti, ovvero se il dataset che abbiamo appena letto sia effettivamente corrispondente con quello che ci aspettiamo. Siccome non si tratta di un operazione di gestione dati come quelle viste finora, ma di un operazione di estrazione informazioni, verrà implementata tramite un PROC. In particolare la procedura da invocare è la CONTENTS. L invocazione della PROC CONTENTS permette di dichiarare alcune opzioni: in particolare l opzione DATA specifica il dataset che deve essere visualizzato.

21 2.16 Variabili indicizzate 21 Problema 7: stampa contenuto. Dato il dataset delle regioni italiane, si aggiunga una variabile densità che memorizza il numero di abitanti per kilometro quadrato e si controlli la correttezza del nuovo dataset. Programma 2.11: Dataset regioni: contents 1 libname libro c:\desktop ; 2 data regionic; 3 set libro.regioni; 4 densita=abitanti/superfic; 5 run; 6 proc contents data=regionic; 7 run; Il risultato di PROC CONTENTS non consiste però nel contenuto del dataset, ma in un elenco di utili informazioni (fra cui il numero di osservazioni e di variabili) che ci permettono di capire se il dataset sia stato caricato correttamente. Se invece il risultato che si vuole ottenere è la stampa del contenuto del dataset la procedura da invocare è la PROC PRINT, come si può vedere nel Prog Programma 2.12: Dataset regioni: stampa contenuto 1 libname libro c:\desktop ; 2 data regionic; 3 set libro.regioni; 4 densita=abitanti/superfic; 5 run; 6 proc print data=regionic; 7 run; 2.16 variabili indicizzate È abbastanza frequente il caso di dovere gestire un dataset in cui alcune variabili contengono dati fortemente correlati fra loro. Come esempio gestiremo un registro del tipo utilizzato nelle scuole superiori, in cui vogliamo memorizzare le assenze ed i voti ottenuti. Problema 8: Registro scolastico. Si gestisca un dataset per un registro scolastico, in cui le variabili sono nome e cognome dello studente, presenza o assenza per ogni lezione (in totale 100 lezioni), e voti ottenuti (in totale 5 voti). In riferimento al Problema 8 diventa utile raggruppare le variabili per le presenze in quanto rappresentano informazioni analoghe. A tal fine esiste una sintassi particolare

22 22 I fondamenti al momento della definizione delle variabili che ci permette di definire 100 variabili i cui nomi sono registro1, registro2,..., registro100: si utilizza la scrittura registro1-registro100. Adesso siamo in grado di risolvere il problema. In realtà nella sezione 3.2 comprenderemo come la risoluzione reale del problema preveda alcune complicazioni ulteriori. In ogni caso il programma che segue permette di leggere i dati in ingresso. Programma 2.13: Registro scolastico: inserimento dati 1 libname libro c:\desktop ; 2 /* 3 data libro.registro; 4 input nome $ cognome $ (presenze1-presenze100) ($) voti1-voti5; 5 */ 6 proc contents data=libro.registro; 7 run; Notare che, nel Prog. 2.13, le variabili presenze1-presenze100 sono state raggruppate fra parentesi tonde al fine di assegnare a tutte lo stesso tipo (alfanumerico). Conseguentemente anche il simbolo $ è stato posto fra parentesi tonde estrarre osservazioni da un dataset Una operazione complementare alla creazione di osservazioni è l estrazione di osservazioni. Ciò consiste in una copia selettiva del dataset, ovvero si selezionano quali osservazione debbano essere copiate, chiaramente tramite una sequenza di DATA STEP. Ad esempio esplicitiamo nel Prog la distinzione effettuata nel Prog. 3.6 creando due dataset. Si noti che ogni costante non numerica debba essere compresa fra apici. La IF è una istruzione condizionale che, in questo caso, non presenta esplicitamente l istruzione da eseguire se la condizione è vera oppure falsa. In questo caso si assume che se la condizione è falsa allora non si esegue nessuna istruzione, altrimenti si assegna l osservazione al dataset specificata all inizio del DATA step. Pertanto il risultato del Prog è la creazione di due dataset temporanei contenenti i dati distinti per sesso. Il valore di una variabile viene confrontato con una costante (oppure un altra variabile) tramite gli operatori in Tabella istruzioni condizionali Come spiegato nella Sez la IF permette di eseguire alcune istruzioni solo se una determinata condizione sia verificata. Tale istruzione è possibile solo in un data step, e la sua forma completa è IF condizione THEN istruzione1 ELSE istruzione2, dove istruzione1 viene eseguita se e solo se la condizione è vera, mentre la istruzione2 viene eseguita se e solo se la condizione è falsa. Sia il blocco ELSE istruzione2 che quello THEN istruzione 1 possono essere omessi: nel primo caso è equivalente a ELSE non fare

23 2.18 Istruzioni condizionali 23 Programma 2.14: Dataset registro: partizionamento IF 1 libname libro c:\desktop ; 2 /* 3 data libro.registro; 4 input nome cognome mf presenze1-presenze10 voti1-voti5; 5 */ 6 data maschi; 7 set libro.registro; 8 if mf eq m ; 9 run; 10 data femmine; 11 set libro.registro; 12 if mf eq f ; 13 run; Operatore EQ LT LE GT GE NE Tabella 2.2: Significato Uguale Minore Minore o uguale Maggiore Maggiore o uguale Diverso Operatori di confronto nulla, nel secondo è equivalente a THEN azione di default, che normalmente consiste nell inserire l osservazione nel dataset. È da notare che sia istruzione1 che istruzione2 devono essere un unica istruzione. Ciò nonostante talvolta è utile potere eseguire più istruzioni se la condizione è vera: in tal caso la sequenza di istruzioni devono essere comprese fra le parole riservate DO; e END:.

24

25 Ancora operazioni su dataset 3.1 introduzione Le operazioni che abbiamo visto finora permettono una gestione basilare di un dataset: tuttavia un uso reale di SAS necessita di una conoscenza più approfondita di tali strumenti, in particolare di quelli che permetto l inserimento e la visualizzazione dei dati. Successivamente si passerà al calcolo delle principali statistiche riguardanti un dataset, per poi passare alla manipolazione di un dataset. 3.2 inserire i dati Finalmente si capisce a cosa serve SAS In precedenza abbiamo trattato degli inserimenti semplici: i dati erano sempre perfettamente strutturati. Quando abbiamo introdotto il Problema 8 non abbiamo considerato i seguenti casi: un registro contiene annotazione solo delle assenze; non tutti gli studenti hanno esattamente 5 voti. Entrambi i punti appena evidenziati nascono dal problema dei dati mancanti, ovvero che il dataset possa contenere delle caselle vuote, e che il fatto che un dato manchi ha un significato ben preciso (non mi sembra ragionevole che uno zero come voto sia uguale a non essere presenti il giorno del compito in classe). Vista l importanza di tale concetto SAS fornisce un modo semplice per identificare un dato mancate: se il dato atteso era numerico lo si sostituisce con un punto., altrimenti (nel caso di dati alfanumerici) viene sostituito con uno spazio. Assumendo pertanto che si segnala con la lettera a un assenza il seguente programma permette di inserire un semplice registro (con solo 10 giorni per non appesantire il programma). Programma 3.1: Dataset registro: inizializzazione 1 libname libro c:\desktop ; 2 data libro.registro; 3 infile c:\desktop\registro dlm=, ; 4 input nome $ cognome $ (presenze1-presenze10) ($) voti1-presenze5; 5 run; Dove il file c:\desktop\registro è del tipo: 1 Mario,Rossi,,,,,,a,a,,,,3,2,1,.,3 2 Luisa,Bianchi,,,,,,,,,,,5,4,5,5,4

26 26 Ancora operazioni su dataset Problema 9: DATALINES. Era possibile inserire i dati del registro in un programma SAS con l istruzione DATALINES? In generale il dato mancante viene identificato sempre con un punto, eventualmente racchiuso tra apici se si tratta di dato alfanumerico. Tale rappresentazione torna utile quando si vuole gestire esplicitamente il dato mancante. Un metodo alternativo per leggere i dati è il cosiddetto modo per colonne: ovvero per ogni variabile si specifica quanti caratteri debbano occupare i dati ivi contenuti. Supponiamo di riservare 20 caratteri per nome e cognome: adesso possiamo inizializzare il dataset con il seguente programma: Programma 3.2: Dataset registro: inizializzazione su colonne 1 libname libro c:\desktop ; 2 data libro.registro; 3 input nome $ 1-20 cognome $ presenze1-presenze10 $ voti1-voti ; 5 datalines; 6 Mario Rossi a a Luisa Bianchi ; 9 run; Quando si utilizza il formato colonnare, nel log viene presentato un righello che permette di controllare con facilità se ci sono stati errori nella definizione del formato dei dati in ingresso. Un metodo più generale e flessibile è quello dell informat: ovvero si specifica esplicitamente il formato dei dati riferiti ad ogni variabile. Il nostro programma diventa pertanto il seguente: Programma 3.3: Dataset registro: inizializzazione con informat 1 libname libro c:\desktop ; 2 data libro.registro; 3 informat nome $20. cognome $20.; 4 informat (presenze1-presenze10 voti1-voti5) 1; 5 input nome cognome presenze1-presenze10 voti1-voti5; 6 datalines; 7 Mario Rossi a a Luisa Bianchi ; 10 run;

27 3.3 Array 27 In questo caso i formati sono definiti con l istruzione INFORMAT dove ogni variabile viene seguita dal formato, ovvero viene specificato se il dato sia numerico o alfanumerico ed il numero massimo di caratteri. Un punto segue il numero di caratteri se uno spazio (o un altro simbolo di separazione) separa i dati anche se non sono stati utilizzati tutti i caratteri a disposizione. Si noti inoltre come le parentesi possono raggruppare insiemi di variabili a cui associare lo stesso formato. Sia il modo colonnare che quello degli informat permettono di definire con precisione il formato dei dati da ricevere in ingresso, senza caratteri di separazione che potrebbero essere ambigui. Inoltre il problema dei dati mancanti viene risolto nella maniera più intuitiva possibile: non inserendo il dato! Una tipologia particolare di dati è quella composta dalle date, che vengono rappresentate internamente in un formato numerico, e per cui sono disponibili vari formati di lettura o scrittura. In particolare i formati più utilizzati sono: DATE7. consiste nel formato di 2 cifre per il giorno, 3 lettere per il mese e 2 cifre per l anno, ad esempio 10Apr02. DATE9. consiste nel formato di 2 cifre per il giorno, 3 lettere per il mese e 4 cifre per l anno, ad esempio 10Apr2002. DDMMYY. consiste nel formato di 2 cifre per il giorno, 2 cifre per il mese e 2 cifre per l anno, ad esempio DDMMYYYY. consiste nel formato di 2 cifre per il giorno, 4 cifre per il mese e 4 cifre per l anno, ad esempio Il formato deve essere sempre specificato dopo il nome della variabile a cui si riferisce, in maniera analoga a quanto fatto con il simbolo $ per specificare che il formato di una variabile è alfanumerico. 3.3 array Alcune nuove variabili sono calcolabili solo attraverso un insieme di operazioni sulle variabili inizialmente previste nel dataset, come ad esempio avevamo già visto per calcolare la densità di ogni regione. In alcuni casi le operazioni per calcolare i valori da assegnare ad una variabile sono più complesse quali, ad esempio, operazioni semplici su un insieme vasto di variabili. Si consideri il seguente problema sul dataset riguardante il registro scolastico: Problema 10: Numero assenze. Stampare il numero di totale di assenze di ogni alunno. La particolarità del Problema 10 consiste nel fatto che l informazione che interessa può essere ottenuta solo analizzando un insieme potenzialmente vasto di variabili nella stessa osservazione. Pertanto scrivere esplicitamente l espressione aritmetica non è pratico, sebbene sia possibile. Per riuscire a risolvere in maniera soddisfacente il problema sono necessari alcuni nuovi concetti, il primo dei quali è quello di array. Quanto tempo ci vuole per scrivere tutte e 100 le variabili coinvolte? Definizione (Array). Un array è una sequenza di variabili, dove ogni variabile è accessibile tramite un indice.

Il database management system Access

Il database management system Access Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio

Dettagli

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi Capitolo Terzo Primi passi con Microsoft Access Sommario: 1. Aprire e chiudere Microsoft Access. - 2. Aprire un database esistente. - 3. La barra multifunzione di Microsoft Access 2007. - 4. Creare e salvare

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

Strutturazione logica dei dati: i file

Strutturazione logica dei dati: i file Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

www.filoweb.it STAMPA UNIONE DI WORD

www.filoweb.it STAMPA UNIONE DI WORD STAMPA UNIONE DI WORD Molte volte abbiamo bisogno di stampare più volte lo stesso documento cambiando solo alcuni dati. Potremmo farlo manualmente e perdere un sacco di tempo, oppure possiamo ricorrere

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA BOZZA 23/07/2008 INDICE 1. PERCHÉ UNA NUOVA VERSIONE DEI MODULI DI RACCOLTA DATI... 3 2. INDICAZIONI GENERALI... 4 2.1. Non modificare la struttura dei fogli di lavoro... 4 2.2. Cosa significano

Dettagli

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

ARCHIVI E DATABASE (prof. Ivaldi Giuliano) ARCHIVI E DATABASE (prof. Ivaldi Giuliano) Archivio: è un insieme di registrazioni (o records) ciascuna delle quali è costituita da un insieme prefissato di informazioni elementari dette attributi (o campi).

Dettagli

PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0)

PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0) PROCEDURA INVENTARIO DI MAGAZZINO di FINE ESERCIZIO (dalla versione 3.2.0) (Da effettuare non prima del 01/01/2011) Le istruzioni si basano su un azienda che ha circa 1000 articoli, che utilizza l ultimo

Dettagli

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi.

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. PROGETTO SeT Il ciclo dell informazione Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. Scuola media Istituto comprensivo di Fagagna (Udine) Insegnanti referenti: Guerra Annalja, Gianquinto

Dettagli

Alla scoperta della nuova interfaccia di Office 2010

Alla scoperta della nuova interfaccia di Office 2010 Alla scoperta della nuova interfaccia di Office 2010 Una delle novità più eclatanti della versione 2007 era la nuova interfaccia con la barra multifunzione. Office 2010 mantiene questa filosofia di interfaccia

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

I database relazionali (Access)

I database relazionali (Access) I database relazionali (Access) Filippo TROTTA 04/02/2013 1 Prof.Filippo TROTTA Definizioni Database Sistema di gestione di database (DBMS, Database Management System) Sistema di gestione di database relazionale

Dettagli

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro, EXCEL PER WINDOWS95 1.Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area

Dettagli

Novità di Access 2010

Novità di Access 2010 2 Novità di Access 2010 In questo capitolo: Gestire le impostazioni e i file di Access nella visualizzazione Backstage Personalizzare l interfaccia utente di Access 2010 Creare database utilizzando modelli

Dettagli

Metodologie di programmazione in Fortran 90

Metodologie di programmazione in Fortran 90 Metodologie di programmazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2007/2008 Fortran 90: Metodologie di programmazione DIS - Dipartimento di

Dettagli

CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS

CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS CONTENUTI: CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS Creazione database vuoto Creazione tabella Inserimento dati A) Creazione di un database vuoto Avviamo il programma Microsoft Access. Dal menu

Dettagli

Mon Ami 3000 Centri di costo Contabilità analitica per centri di costo/ricavo e sub-attività

Mon Ami 3000 Centri di costo Contabilità analitica per centri di costo/ricavo e sub-attività Prerequisiti Mon Ami 000 Centri di costo Contabilità analitica per centri di costo/ricavo e sub-attività L opzione Centri di costo è disponibile per le versioni Contabilità o Azienda Pro. Introduzione

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Dettagli

MANUALE PARCELLA FACILE PLUS INDICE

MANUALE PARCELLA FACILE PLUS INDICE MANUALE PARCELLA FACILE PLUS INDICE Gestione Archivi 2 Configurazioni iniziali 3 Anagrafiche 4 Creazione prestazioni e distinta base 7 Documenti 9 Agenda lavori 12 Statistiche 13 GESTIONE ARCHIVI Nella

Dettagli

Cosa è un foglio elettronico

Cosa è un foglio elettronico Cosa è un foglio elettronico Versione informatica del foglio contabile Strumento per l elaborazione di numeri (ma non solo...) I valori inseriti possono essere modificati, analizzati, elaborati, ripetuti

Dettagli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione

Dettagli

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

Dettagli

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa.

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa. La finestra di Excel è molto complessa e al primo posto avvio potrebbe disorientare l utente. Analizziamone i componenti dall alto verso il basso. La prima barra è la barra del titolo, dove troviamo indicato

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. *+33(GLWRU GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. Il programma si basa su un architettura di tasti funzionali presenti

Dettagli

Creare diagrammi di Gantt con Visio 2003

Creare diagrammi di Gantt con Visio 2003 Creare diagrammi di Gantt con Visio 2003 La fase di pianificazione di un progetto è sicuramente molto delicata e alquanto complessa, in quanto bisogna riuscire a definire una scomposizione del progetto

Dettagli

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

Dettagli

INSERIMENTO DATI BASILARI

INSERIMENTO DATI BASILARI PASSO PASSO. Questo applicativo software nasce con l idea di essere molto semplice da usare. Di fatto lo è ed infatti non dispone di un help in linea all interno dello stesso. Tuttavia ci sentiamo in dovere

Dettagli

Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali

Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali PowerPoint Come costruire una presentazione PowerPoint 1 Introduzione! PowerPoint è uno degli strumenti presenti nella suite Office di Microsoft! PowerPoint permette la realizzazione di presentazioni video

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

FIRESHOP.NET. Gestione Lotti & Matricole. www.firesoft.it

FIRESHOP.NET. Gestione Lotti & Matricole. www.firesoft.it FIRESHOP.NET Gestione Lotti & Matricole www.firesoft.it Sommario SOMMARIO Introduzione... 3 Configurazione... 6 Personalizzare le etichette del modulo lotti... 6 Personalizzare i campi che identificano

Dettagli

ControlloCosti. Cubi OLAP. Controllo Costi Manuale Cubi

ControlloCosti. Cubi OLAP. Controllo Costi Manuale Cubi ControlloCosti Cubi OLAP I cubi OLAP Un Cubo (OLAP, acronimo di On-Line Analytical Processing) è una struttura per la memorizzazione e la gestione dei dati che permette di eseguire analisi in tempi rapidi,

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Scopo della lezione. Informatica. Informatica - def. 1. Informatica Scopo della lezione Informatica per le lauree triennali LEZIONE 1 - Che cos è l informatica Introdurre i concetti base della materia Definire le differenze tra hardware e software Individuare le applicazioni

Dettagli

Fogli Elettronici: MS Excel utilizzo avanzato

Fogli Elettronici: MS Excel utilizzo avanzato Fogli Elettronici: MS Excel utilizzo avanzato 1 Ripasso 2 1 Selezionare celle e gruppi di celle Una cella in un foglio è individuata dall incrocio tra la riga e la colonna (coordinate della cella) Es:

Dettagli

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo Creazione di moduli Creazione di moduli Che cos'è un modulo? Un elenco di domande accompagnato da aree in cui è possibile scrivere le risposte, selezionare opzioni. Il modulo di un sito Web viene utilizzato

Dettagli

MANUALE D USO DELLA PIATTAFORMA ITCMS

MANUALE D USO DELLA PIATTAFORMA ITCMS MANUALE D USO DELLA PIATTAFORMA ITCMS MANULE D USO INDICE 1. INTRODUZIONE... 2 2. ACCEDERE ALLA GESTIONE DEI CONTENUTI... 3 3. GESTIONE DEI CONTENUTI DI TIPO TESTUALE... 4 3.1 Editor... 4 3.2 Import di

Dettagli

LINGUAGGI DI PROGRAMMAZIONE

LINGUAGGI DI PROGRAMMAZIONE LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di

Dettagli

Progettazione di un Database

Progettazione di un Database Progettazione di un Database Per comprendere il processo di progettazione di un Database deve essere chiaro il modo con cui vengono organizzati e quindi memorizzati i dati in un sistema di gestione di

Dettagli

Mon Ami 3000 Provvigioni agenti Calcolo delle provvigioni per agente / sub-agente

Mon Ami 3000 Provvigioni agenti Calcolo delle provvigioni per agente / sub-agente Prerequisiti Mon Ami 3000 Provvigioni agenti Calcolo delle provvigioni per agente / sub-agente L opzione Provvigioni agenti è disponibile per le versioni Vendite, Azienda Light e Azienda Pro. Introduzione

Dettagli

Università degli Studi di Messina

Università degli Studi di Messina Università degli Studi di Messina Guida alla Rendicontazione on-line delle Attività del Docente Versione della revisione: 2.02/2013-07 A cura di: Fabio Adelardi Università degli studi di Messina Centro

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Biblioteca di Cervia NOZIONI BASE DI INFORMATICA

Biblioteca di Cervia NOZIONI BASE DI INFORMATICA Biblioteca di Cervia NOZIONI BASE DI INFORMATICA NOZIONI DI INFORMATICA Il PC è composto solitamente di tre parti principali: - Il Case, ovvero il contenitore del cuore del computer, da qui si accende

Dettagli

5.2 UTILIZZO DELL APPLICAZIONE

5.2 UTILIZZO DELL APPLICAZIONE 5.2 UTILIZZO DELL APPLICAZIONE Base offre la possibilità di creare database strutturati in termini di oggetti, quali tabelle, formulari, ricerche e rapporti, di visualizzarli e utilizzarli in diverse modalità.

Dettagli

LUdeS Informatica 2 EXCEL. Seconda parte AA 2013/2014

LUdeS Informatica 2 EXCEL. Seconda parte AA 2013/2014 LUdeS Informatica 2 EXCEL Seconda parte AA 2013/2014 STAMPA Quando si esegue il comando FILE STAMPA, Excel manda alla stampante tutte le celle del foglio di lavoro corrente che hanno un contenuto. Il numero

Dettagli

LA RICLASSIFICAZIONE DEI SALDI CONTABILI CON MICROSOFT ACCESS 2007

LA RICLASSIFICAZIONE DEI SALDI CONTABILI CON MICROSOFT ACCESS 2007 LA RICLASSIFICAZIONE DEI SALDI CONTABILI CON MICROSOFT ACCESS 2007 La fase di riclassificazione del bilancio riveste un ruolo molto importante al fine di comprendere l andamento aziendale; essa consiste,

Dettagli

Circolari e lettere da Word con anagrafiche e indirizzi da Metodo

Circolari e lettere da Word con anagrafiche e indirizzi da Metodo Circolari e lettere da Word con anagrafiche e indirizzi da Metodo Metodo sfrutta tutte le potenzialità messe a disposizione da Microsoft Windows integrandosi perfettamente su tale piattaforma e permettendo

Dettagli

DOCUMENTO ESERCITAZIONE ONENOTE. Utilizzare Microsoft Offi ce OneNote 2003: esercitazione rapida

DOCUMENTO ESERCITAZIONE ONENOTE. Utilizzare Microsoft Offi ce OneNote 2003: esercitazione rapida Utilizzare Microsoft Offi ce OneNote 2003: esercitazione rapida MICROSOFT OFFICE ONENOTE 2003 AUMENTA LA PRODUTTIVITÀ CONSENTENDO AGLI UTENTI L ACQUISIZIONE COMPLETA, L ORGANIZZAZIONE EFFICIENTE E IL RIUTILIZZO

Dettagli

Il file seme o file modello del disegno

Il file seme o file modello del disegno o file modello del disegno Alla fine del capitolo saremo in grado di: Comprendere il significato e l utilizzo del file seme. Scegliere tra file seme bidimensionali e tridimensionali. Creare nuovi disegni.

Dettagli

1. Le macro in Access 2000/2003

1. Le macro in Access 2000/2003 LIBRERIA WEB 1. Le macro in Access 2000/2003 Per creare una macro, si deve aprire l elenco delle macro dalla finestra principale del database: facendo clic su Nuovo, si presenta la griglia che permette

Dettagli

LABORATORIO-EXCEL N. 2-3 XLSTAT- Pro Versione 7 VARIABILI QUANTITATIVE

LABORATORIO-EXCEL N. 2-3 XLSTAT- Pro Versione 7 VARIABILI QUANTITATIVE LABORATORIO-EXCEL N. 2-3 XLSTAT- Pro Versione 7 VARIABILI QUANTITATIVE DESCRIZIONE DEI DATI DA ESAMINARE Sono stati raccolti i dati sul peso del polmone di topi normali e affetti da una patologia simile

Dettagli

Guida all uso di Java Diagrammi ER

Guida all uso di Java Diagrammi ER Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con

Dettagli

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione Automatizzare i compiti ripetitivi I file batch Anno accademico 2000-01 1 Spesso capita di dover eseguire ripetutatmente una data sequenza di comandi Introdurli uno a uno da tastiera è un processo lento

Dettagli

Come masterizzare dischi con Nero 11

Come masterizzare dischi con Nero 11 Come masterizzare dischi con Nero 11 Non c è dubbio che Nero è diventato un sinonimo di masterizzatore di dischi, data la lunga esperienza sul mercato. Molte persone pensano in questo programma nel momento

Dettagli

Gestione ed analisi di base dati nell epidemiologia. delle malattie infettive

Gestione ed analisi di base dati nell epidemiologia. delle malattie infettive Università degli Studi di Torino - Facoltà di Medicina Veterinaria Laboratorio di epidemiologia delle malattie infettive Scuola Specializzazione in Sanità Animale, Allevamento e Produzioni Zootecniche

Dettagli

MODULO 5 ACCESS Basi di dati. Lezione 4

MODULO 5 ACCESS Basi di dati. Lezione 4 MODULO 5 ACCESS Basi di dati Lezione 4 ARGOMENTI Lezione 4 Filtrare i dati Esempio 1 Query Cos è Creare Query in visualizza struttura Criteri di ricerca Esempio 2 Esempio 3 Esempio 4 Creare Query in creazione

Dettagli

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli

per immagini guida avanzata Organizzazione e controllo dei dati Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1

per immagini guida avanzata Organizzazione e controllo dei dati Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1 Organizzazione e controllo dei dati Geometra Luigi Amato Guida Avanzata per immagini excel 2000 1 Il raggruppamento e la struttura dei dati sono due funzioni di gestione dati di Excel, molto simili tra

Dettagli

Il calendario di Windows Vista

Il calendario di Windows Vista Il calendario di Windows Vista Una delle novità introdotte in Windows Vista è il Calendario di Windows, un programma utilissimo per la gestione degli appuntamenti, delle ricorrenze e delle attività lavorative

Dettagli

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

LA GESTIONE DELLE VISITE CLIENTI VIA WEB LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici

Dettagli

Introduzione alla programmazione in C

Introduzione alla programmazione in C Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale

Dettagli

WORD per WINDOWS95. Un word processor e` come una macchina da scrivere ma. con molte più funzioni. Il testo viene battuto sulla tastiera

WORD per WINDOWS95. Un word processor e` come una macchina da scrivere ma. con molte più funzioni. Il testo viene battuto sulla tastiera WORD per WINDOWS95 1.Introduzione Un word processor e` come una macchina da scrivere ma con molte più funzioni. Il testo viene battuto sulla tastiera ed appare sullo schermo. Per scrivere delle maiuscole

Dettagli

Raggruppamenti Conti Movimenti

Raggruppamenti Conti Movimenti ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli

Dettagli

PROGRAMMA SVOLTO NELLA SESSIONE N.

PROGRAMMA SVOLTO NELLA SESSIONE N. Università C. Cattaneo Liuc, Corso di Statistica, Sessione n. 1, 2014 Laboratorio Excel Sessione n. 1 Venerdì 031014 Gruppo PZ Lunedì 061014 Gruppo AD Martedì 071014 Gruppo EO PROGRAMMA SVOLTO NELLA SESSIONE

Dettagli

MANUALE EDICOLA 04.05

MANUALE EDICOLA 04.05 MANUALE EDICOLA 04.05 Questo è il video che si presenta avviando il programma di Gestione Edicola. Questo primo video è relativo alle operazioni di carico. CARICO Nello schermo di carico, in alto a sinistra

Dettagli

PULSANTI E PAGINE Sommario PULSANTI E PAGINE...1

PULSANTI E PAGINE Sommario PULSANTI E PAGINE...1 Pagina 1 Sommario...1 Apertura...2 Visualizzazioni...2 Elenco...2 Testo sul pulsante e altre informazioni...3 Comandi...3 Informazioni...4 Flow chart...5 Comandi...6 Pulsanti Principali e Pulsanti Dipendenti...6

Dettagli

Convertitori numerici in Excel

Convertitori numerici in Excel ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel

Dettagli

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle

Dettagli

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle

Dettagli

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Funzioni di Esportazione Importazione 1 Indice AIRONE GESTIONE RIFIUTI... 1 FUNZIONI DI ESPORTAZIONE E IMPORTAZIONE... 1 INDICE...

Dettagli

Gestione Risorse Umane Web

Gestione Risorse Umane Web La gestione delle risorse umane Gestione Risorse Umane Web Generazione attestati di partecipazione ai corsi di formazione (Versione V03) Premessa... 2 Configurazione del sistema... 3 Estrattore dati...

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

ALGEBRA DELLE PROPOSIZIONI

ALGEBRA DELLE PROPOSIZIONI Università di Salerno Fondamenti di Informatica Corso di Laurea Ingegneria Corso B Docente: Ing. Giovanni Secondulfo Anno Accademico 2010-2011 ALGEBRA DELLE PROPOSIZIONI Fondamenti di Informatica Algebra

Dettagli

Workland CRM. Workland CRM Rel 2570 21/11/2013. Attività --> FIX. Magazzino --> NEW. Nessuna --> FIX. Ordini --> FIX

Workland CRM. Workland CRM Rel 2570 21/11/2013. Attività --> FIX. Magazzino --> NEW. Nessuna --> FIX. Ordini --> FIX Attività Attività --> FIX In alcuni casi, in precedenza, sulla finestra trova attività non funzionava bene la gestione dei limiti tra date impostati tramite il menu a discesa (Oggi, Tutte, Ultima Settimana,

Dettagli

Introduzione a Dev-C++

Introduzione a Dev-C++ Introduzione a Dev-C++ Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Note: Dev-C++ richiede Windows 95/98/NT/2000/XP

Dettagli

Gestione Rapporti (Calcolo Aree)

Gestione Rapporti (Calcolo Aree) Gestione Rapporti (Calcolo Aree) L interfaccia dello strumento generale «Gestione Rapporti»...3 Accedere all interfaccia (toolbar)...3 Comandi associati alle icone della toolbar...4 La finestra di dialogo

Dettagli

Il foglio elettronico 5/06/2013

Il foglio elettronico 5/06/2013 Il foglio elettronico 5/06/2013 Che cos'è un foglio elettronico Quando dobbiamo eseguire dei calcoli, rappresentare tabelle, fare disegni, siamo portati naturalmente a servirci di fogli a quadretti perché

Dettagli

5.6.1 REPORT, ESPORTAZIONE DI DATI

5.6.1 REPORT, ESPORTAZIONE DI DATI 5.6 STAMPA In alcune circostanze può essere necessario riprodurre su carta i dati di tabelle o il risultato di ricerche; altre volte, invece, occorre esportare il risultato di una ricerca, o i dati memorizzati

Dettagli

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per

Dettagli

5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record

5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record 5.3 TABELLE In un sistema di database relazionali le tabelle rappresentano la struttura di partenza, che resta poi fondamentale per tutte le fasi del lavoro di creazione e di gestione del database. 5.3.1

Dettagli

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

Dettagli

Introduzione all Information Retrieval

Introduzione all Information Retrieval Introduzione all Information Retrieval Argomenti della lezione Definizione di Information Retrieval. Information Retrieval vs Data Retrieval. Indicizzazione di collezioni e ricerca. Modelli per Information

Dettagli

Mac Application Manager 1.3 (SOLO PER TIGER)

Mac Application Manager 1.3 (SOLO PER TIGER) Mac Application Manager 1.3 (SOLO PER TIGER) MacApplicationManager ha lo scopo di raccogliere in maniera centralizzata le informazioni piu salienti dei nostri Mac in rete e di associare a ciascun Mac i

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 1 Sistema software 1 Prerequisiti Utilizzo elementare di un computer Significato elementare di programma e dati Sistema operativo 2 1 Introduzione In questa Unità studiamo

Dettagli

EasyPrint v4.15. Gadget e calendari. Manuale Utente

EasyPrint v4.15. Gadget e calendari. Manuale Utente EasyPrint v4.15 Gadget e calendari Manuale Utente Lo strumento di impaginazione gadget e calendari consiste in una nuova funzione del software da banco EasyPrint 4 che permette di ordinare in maniera semplice

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

Dettagli

Word è un elaboratore di testi in grado di combinare il testo con immagini, fogli di lavoro e

Word è un elaboratore di testi in grado di combinare il testo con immagini, fogli di lavoro e Word è un elaboratore di testi in grado di combinare il testo con immagini, fogli di lavoro e grafici, tutto nello stesso file di documento. Durante il lavoro testo e illustrazioni appaiono sullo schermo

Dettagli

Volume GESTFLORA. Gestione aziende agricole e floricole. Guidaall uso del software

Volume GESTFLORA. Gestione aziende agricole e floricole. Guidaall uso del software Volume GESTFLORA Gestione aziende agricole e floricole Guidaall uso del software GESTIONE AZIENDE AGRICOLE E FLORICOLE Guida all uso del software GestFlora Ver. 2.00 Inter-Ware Srl Viadegli Innocenti,

Dettagli

STAMPA DI UNA PAGINA SEMPLICE

STAMPA DI UNA PAGINA SEMPLICE Pagina 11 copiati nel proprio sistema (disco fisso o floppy). Questa operazione è detta download o scaricamento. Il modo più semplice per effettuare un download di un file (a meno che non sia specificato

Dettagli

Corso di Archivistica

Corso di Archivistica Corso di Archivistica e gestione documentale Prima Parte - Area Informatica Le tabelle Lezione 6 Creare un data base Introduzione La presente è la prima di una serie di lezioni finalizzate alla creazione

Dettagli

Matematica in laboratorio

Matematica in laboratorio Unità 1 Attività guidate Attività 1 Foglio elettronico Divisibilità tra numeri naturali Costruisci un foglio di lavoro per determinare se a è divisibile per b, essendo a e b due numeri naturali, con a

Dettagli

L età dei vincitori La presenza femminile. L età dei vincitori La presenza femminile. Confronto tra il concorso ordinario ed il concorso riservato

L età dei vincitori La presenza femminile. L età dei vincitori La presenza femminile. Confronto tra il concorso ordinario ed il concorso riservato Premessa Corso-concorso ordinario L età dei vincitori La presenza femminile Corso-concorso riservato L età dei vincitori La presenza femminile Confronto tra il concorso ordinario ed il concorso riservato

Dettagli

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software:

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: 1 SOFTWARE È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: SOFTWARE DI SISTEMA (o di base), che deve gestire le funzioni

Dettagli

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

Dettagli

SOMMARIO... 3 INTRODUZIONE...

SOMMARIO... 3 INTRODUZIONE... Sommario SOMMARIO... 3 INTRODUZIONE... 4 INTRODUZIONE ALLE FUNZIONALITÀ DEL PROGRAMMA INTRAWEB... 4 STRUTTURA DEL MANUALE... 4 INSTALLAZIONE INRAWEB VER. 11.0.0.0... 5 1 GESTIONE INTRAWEB VER 11.0.0.0...

Dettagli

PowerPoint. Guida introduttiva

PowerPoint. Guida introduttiva PowerPoint Guida introduttiva Informativa Questa guida nasce con l intento di spiegare in modo chiaro e preciso come usare il software Microsoft PowerPoint. In questa guida saranno tralasciati tutti quei

Dettagli

Al giorno d oggi, i sistemi per la gestione di database

Al giorno d oggi, i sistemi per la gestione di database Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,

Dettagli