Panda: come specificare i tipi durante l'importazione di un file excel
È possibile utilizzare la seguente sintassi di base per specificare il tipo di ciascuna colonna in un DataFrame quando si importa un file Excel in panda:
df = pd. read_excel (' my_data.xlsx ', dtype = {' col1 ': str , ' col2 ': float , ' col3 ': int })
L’argomento dtype specifica il tipo di dati che ogni colonna dovrebbe avere quando si importa il file Excel in un DataFrame panda.
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: specificare i tipi durante l’importazione di un file Excel in Pandas
Diciamo che abbiamo il seguente file Excel chiamato player_data.xlsx :
Se importiamo il file Excel utilizzando la funzione read_excel() , i panda tenteranno di identificare automaticamente il tipo di dati per ciascuna colonna:
import pandas as pd #import Excel file df = pd. read_excel (' player_data.xlsx ') #view resulting DataFrame print (df) team points rebound assists 0 to 24 8 5 1 B 20 12 3 2 C 15 4 7 3 D 19 4 8 4 E 32 6 8 5 F 13 7 9 #view data type of each column print ( df.dtypes ) team object int64 dots rebounds int64 assists int64 dtype:object
Dal risultato, possiamo vedere che le colonne del DataFrame hanno i seguenti tipi di dati:
- squadra : oggetto
- punti : int64
- rimbalza : int64
- assiste : int64
Tuttavia, possiamo utilizzare l’argomento dtype nella funzione read_excel() per specificare i tipi di dati che ciascuna colonna dovrebbe avere:
import pandas as pd #import Excel file and specify dtypes of columns df = pd. read_excel (' player_data.xlsx ', dtype = {' team ': str , ' points ': float , ' rebounds ': int , ' assists ': float }) #view resulting DataFrame print (df) team points rebound assists 0 A 24.0 8 5.0 1 B 20.0 12 3.0 2 C 15.0 4 7.0 3 D 19.0 4 8.0 4 E 32.0 6 8.0 5 F 13.0 7 9.0 #view data type of each column print ( df.dtypes ) team object float64 points rebounds int32 assist float64 dtype:object
Dal risultato, possiamo vedere che le colonne del DataFrame hanno i seguenti tipi di dati:
- squadra : oggetto
- punti : float64
- rimbalza : int32
- assist : float64
Questi tipi di dati corrispondono a quelli che abbiamo specificato utilizzando l’argomento dtype .
Tieni presente che in questo esempio abbiamo specificato il tipo per ciascuna colonna nel DataFrame.
Tuttavia, puoi scegliere di specificare il tipo solo per colonne specifiche e consentire ai panda di dedurre il tipo per le colonne rimanenti.
Nota : puoi trovare la documentazione completa della funzione panda read_excel() qui .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:
Panda: come saltare le righe durante la lettura di un file Excel
Panda: come combinare più fogli Excel
Panda: come scrivere DataFrames su più fogli Excel