Laboratory introduction to coding and data management for economics and political science

A.A. 2023/2024
3
Crediti massimi
20
Ore totali
SSD
INF/01
Lingua
Inglese
Obiettivi formativi
Introdurre la logica di programmazione interpretata (scripting) e i costrutti fondamentali del linguaggio di programmazione Python;
Illustrare le principali librerie Python orientate alla manipolazione analisi e visualizzazione di dati strutturati nel contesto delle scienze economiche e finanziarie
Risultati apprendimento attesi
Alla fine del corso lo studente sarà in grado di:
-implementare scripts in linguaggio Pyhton, comprendendone ilsignificato e gli effetti delle istruzioni in esse contenuti;
-padroneggiare tecniche per manipolare, analizzare, e visualizzare datidi natura economica e finanziaria;
-implementare scripts Python corrispondenti a richieste dimanipolazione analisi e visualizzazione dei dati
Corso singolo

Questo insegnamento non può essere seguito come corso singolo. Puoi trovare gli insegnamenti disponibili consultando il catalogo corsi singoli.

Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Secondo trimestre

Programma
Le lezioni saranno focalizzate sui seguenti argomenti:
1. Introduzione al linguaggio Python. Confronto con altri linguaggi di programmazione compilati o interpretati. Introduzione alle possibilità del linguaggio Python.
2. Utilizzo di Python nel cloud. Avvio di un ambiente locale Python. Esecuzione di comandi Python. Esecuzione di programmi Python. Installazione di librerie Python.
3. Funzioni: introduzione alle funzioni, definizione di funzioni, applicazioni di funzioni, chiamate di funzioni ricorsive.
4. Fondamenti di Python: tipi di dati, input e output, iterazione, confronti e operatori logici, stile di scrittura del codice Python e documentazione.
5. Programmazione orientata agli oggetti: classi, oggetti, metodi, nomi e risoluzione dei nomi.
6. Python per il calcolo scientifico: introduzione delle librerie scientifiche più utilizzate, ottimizzazione delle performance del codice, vettorizzazione.
7. La libreria NumPy: array, operazioni aritmetiche, moltiplicazioni di matrici, broadcasting, mutabilità e copie di array.
8. La libreria Matplotlib: l'API in stile MATLAB, l'API orientata agli oggetti, grafici 2D e 3D, subplots e fogli di stile.
9. La libreria SciPy: SciPy vs NumPy, statistiche, radici e punti fissi, ottimizzazione, integrazione e algebra lineare.
10. La libreria Pandas: serie Pandas, DataFrames Pandas e fonti di dati online.
Prerequisiti
Non sono richieste conoscenze preliminari, tuttavia è preferibile possedere la conoscenza di almeno un altro linguaggio di programmazione interpretata, ad esempio: R, MATLAB, Mathematica, JavaScript o PHP.
Metodi didattici
Sono previste lezioni frontali con l'ausilio di Jupyter notebooks e materiali didattici che saranno progressivamente resi disponibili sul sito web dell'insegnamento su piattaforma Ariel.
Materiale di riferimento
Jupyter notebooks e materiali didattici forniti dal docente saranno progressivamente resi disponibili sul sito web dell'insegnamento su piattaforma Ariel. In particolare, il materiale didattico farà riferimento alla seguente bibliografia:
1. T. J. Sargent, J. Stachurski, "Python Programming for Economics and Finance". Ed. dicembre 2022;
2. T. J. Sargent, J. Stachurski, "Quantitative Economics with Python". Ed. dicembre 2022;
3. Y. Hilpisch, "Python for finance". O'Reilly. 2a edizione. 2018;
4. M. Lutz, "Learning Python". O'Reilly. 5a edizione. 2015.
Modalità di verifica dell’apprendimento e criteri di valutazione
L'esame consiste nella consegna di un elaborato finale il cui contenuto è da concordare in anticipo con il docente. Ad esempio, l'elaborato può essere focalizzato sull'analisi, manipolazione e visualizzazione di dati con Python di interesse economico, finanziario o sociale. L'elaborato finale ha lo scopo di verificare che lo studente abbia compreso gli strumenti introdotti durante le lezioni di laboratorio e che sia in grado di utilizzarli in modo corretto, consapevole e critico.
INF/01 - INFORMATICA - CFU: 3
Lezioni: 20 ore
Docente: Bodini Matteo
Docente/i
Ricevimento:
Da concordare su appuntamento
Dipartimento DEMM - ufficio 200 (primo piano, via Livorno 1) oppure Microsoft Teams