Parte 2 — Python Scientifico: NumPy, Matplotlib,
Pandas
11. Array con NumPy
NumPy è una libreria fondamentale per il calcolo scientifico: permette di lavorare con array
multidimensionali e operazioni vettoriali.
import numpy as np
a = np . array ([1 , 2 , 3])
b = np . array ([4 , 5 , 6])
print ( a + b ) # somma vettoriale
print ( a * b ) # prodotto elemento per elemento
print ( np . dot (a , b ) ) # prodotto scalare
12. Matrici e algebra lineare
A = np . array ([[1 , 2] , [3 , 4]])
B = np . array ([[5 , 6] , [7 , 8]])
print ( np . matmul (A , B ) ) # prodotto matriciale
print ( np . linalg . inv ( A ) ) # inversa della matrice A
13. Visualizzazione con Matplotlib
Matplotlib permette di creare grafici 2D.
import matplotlib . pyplot as plt
import numpy as np
x = np . linspace (0 , 2* np . pi , 100)
y = np . sin ( x )
plt . plot (x , y )
plt . title ( " Grafico del seno " )
plt . xlabel ( " x " )
plt . ylabel ( " sin ( x ) " )
plt . grid ( True )
plt . show ()
14. Statistiche e dati con Pandas
Pandas è usato per analisi dati e manipolazione di tabelle (DataFrame).
1
import pandas as pd
# Crea un DataFrame
dati = {
" Nome " : [ " Mario " , " Anna " , " Luca " ] ,
" E t " : [25 , 30 , 28] ,
" Voto " : [27 , 30 , 29]
}
df = pd . DataFrame ( dati )
print ( df )
print ( df [ " Voto " ]. mean () ) # media dei voti
15. Applicazione: Moto Uniformemente Accelerato
# Legge del moto : s = s0 + v0 * t + 0.5* a * t ^2
s0 = 0 # posizione iniziale
v0 = 2 # v e l o c i t iniziale ( m / s )
a = 1.5 # accelerazione ( m / s ^2)
t = np . linspace (0 , 10 , 100)
s = s0 + v0 * t + 0.5* a * t **2
plt . plot (t , s )
plt . title ( " Moto Uniformemente Accelerato " )
plt . xlabel ( " Tempo ( s ) " )
plt . ylabel ( " Posizione ( m ) " )
plt . grid ( True )
plt . show ()
16. Esempio con dati reali (CSV)
# Richiede un file CSV : dati . csv
# Es : colonne " Tempo " , " Posizione "
df = pd . read_csv ( " dati . csv " )
plt . plot ( df [ " Tempo " ] , df [ " Posizione " ] , marker = ’o ’)
plt . title ( " Dati sperimentali di un moto " )
plt . xlabel ( " Tempo ( s ) " )
plt . ylabel ( " Posizione ( m ) " )
plt . grid ( True )
plt . show ()
2
Conclusione della Parte 2
Con l’introduzione di librerie come NumPy, Matplotlib e Pandas, Python diventa uno stru-
mento potente per l’analisi scientifica e la modellazione matematica. Queste competenze
sono fondamentali per simulazioni, analisi dati, visualizzazione e calcolo simbolico.