Pandas: como especificar tipos ao importar um arquivo excel
Você pode usar a seguinte sintaxe básica para especificar o tipo de cada coluna em um DataFrame ao importar um arquivo Excel para o pandas:
df = pd. read_excel (' my_data.xlsx ', dtype = {' col1 ': str , ' col2 ': float , ' col3 ': int })
O argumento dtype especifica o tipo de dados que cada coluna deve ter ao importar o arquivo Excel para um DataFrame do pandas.
O exemplo a seguir mostra como usar essa sintaxe na prática.
Exemplo: especifique tipos ao importar um arquivo Excel para o Pandas
Digamos que temos o seguinte arquivo Excel chamado player_data.xlsx :
Se importarmos o arquivo Excel usando a função read_excel() , o pandas tentará identificar automaticamente o tipo de dados para cada coluna:
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
Pelo resultado, podemos ver que as colunas do DataFrame possuem os seguintes tipos de dados:
- equipe : objeto
- pontos : int64
- rejeições : int64
- assistências : int64
No entanto, podemos usar o argumento dtype na função read_excel() para especificar os tipos de dados que cada coluna deve ter:
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
Pelo resultado, podemos ver que as colunas do DataFrame possuem os seguintes tipos de dados:
- equipe : objeto
- pontos : float64
- rejeições : int32
- assistências : float64
Esses tipos de dados correspondem àqueles que especificamos usando o argumento dtype .
Observe que neste exemplo especificamos o tipo de cada coluna no DataFrame.
No entanto, você pode optar por especificar o tipo apenas para colunas específicas e deixar o pandas inferir o tipo das colunas restantes.
Nota : Você pode encontrar a documentação completa da função read_excel() do pandas aqui .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:
Pandas: como pular linhas ao ler um arquivo Excel
Pandas: como combinar várias planilhas do Excel
Pandas: como escrever DataFrames em várias planilhas do Excel