Pandas: як указати типи під час імпорту файлу excel


Ви можете використовувати наступний базовий синтаксис, щоб указати тип кожного стовпця в DataFrame під час імпорту файлу Excel у pandas:

 df = pd. read_excel (' my_data.xlsx ',
                 dtype = {' col1 ': str , ' col2 ': float , ' col3 ': int })

Аргумент dtype визначає тип даних, який має мати кожен стовпець під час імпорту файлу Excel у DataFrame pandas.

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: укажіть типи під час імпорту файлу Excel у Pandas

Скажімо, у нас є такий файл Excel під назвою player_data.xlsx :

Якщо ми імпортуємо файл Excel за допомогою функції read_excel() , pandas спробує автоматично визначити тип даних для кожного стовпця:

 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

З результату ми бачимо, що стовпці DataFrame мають такі типи даних:

  • команда : об’єкт
  • бали : int64
  • відскоки : int64
  • результативні передачі : int64

Однак ми можемо використовувати аргумент dtype у функції read_excel() , щоб вказати типи даних, які має мати кожен стовпець:

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

З результату ми бачимо, що стовпці DataFrame мають такі типи даних:

  • команда : об’єкт
  • точки : float64
  • відскоки : int32
  • передачі : float64

Ці типи даних відповідають тим, які ми вказали за допомогою аргументу dtype .

Зверніть увагу, що в цьому прикладі ми вказали тип для кожного стовпця в DataFrame.

Однак ви можете вказати тип лише для певних стовпців і дозволити pandas визначити тип для решти стовпців.

Примітка . Ви можете знайти повну документацію функції pandas read_excel() тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в pandas:

Pandas: як пропускати рядки під час читання файлу Excel
Pandas: як об’єднати кілька аркушів Excel
Pandas: Як записати DataFrames на кількох аркушах Excel

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *