Уявіть собі, що ви — космічний дослідник, і дані — це ваша карта зоряного неба. Вона громіздка, заплутана і абсолютно необхідна. Після ретельної фільтрації та аналізу ці дані потребують впорядкування і збереження у легко читабельному форматі. І ось тут на сцену виходить наш герой — експорт даних у Excel. Він дозволяє вам ділитися своїми знахідками з колегами або готувати звіти для важливої наради. У світі, де дані — це нова нафта, навичка створення звітів буквально за кілька рядків коду може коштувати мільйон.
1. Основні аспекти експорту даних
Експорт даних у Excel — це не просто переведення з одного формату в інший. Це можливість налаштувати звіти так, щоб вони були зручні і зрозумілі. Як казав один мій знайомий програміст: "Пітон здатний на магію, але навіть Гаррі Поттеру потрібна паличка". У нашому випадку паличка — це метод to_excel з бібліотеки pandas.
Основи to_excel
Почнемо з простого прикладу експорту даних з DataFrame у Excel-файл. Припустимо, у нас є DataFrame з даними записів про учасників марафону:
import pandas as pd
# Створюємо DataFrame
data = {
'Ім`я': ['Анна', 'Борис', 'Віктор', 'Галина'],
'Вік': [29, 34, 22, 28],
'Місто': ['Москва', 'Санкт-Петербург', 'Казань', 'Новосибірськ'],
'Час фінішу': ['03:15:30', '03:45:10', '03:25:45', '03:50:05']
}
df = pd.DataFrame(data)
# Експортуємо DataFrame у Excel
df.to_excel('marathon_participants.xlsx', index=False)
У цьому прикладі ми створили простий DataFrame і експортували його у файл marathon_participants.xlsx. Зверніть увагу, що ми встановили параметр index=False, щоб не експортувати індекси DataFrame у Excel, якщо вони не потрібні.
Додавання формату і стилів
Переходимо до наступного рівня майстерності — додавання стилю. Бо хто сказав, що дані не можуть бути стильними? З бібліотекою pandas та openpyxl можна легко форматувати таблиці і додавати стилі.
import pandas as pd
from openpyxl import Workbook
# Створюємо DataFrame
data = {
'Ім`я': ['Анна', 'Борис', 'Віктор', 'Галина'],
'Вік': [29, 34, 22, 28],
'Місто': ['Москва', 'Санкт-Петербург', 'Казань', 'Новосибірськ'],
'Час фінішу': ['03:15:30', '03:45:10', '03:25:45', '03:50:05']
}
df = pd.DataFrame(data)
# Записуємо в Excel з форматуванням
with pd.ExcelWriter('styled_marathon.xlsx', engine='openpyxl') as writer:
df.to_excel(writer, index=False, sheet_name='Учасники')
worksheet = writer.sheets['Учасники']
for col in worksheet.columns:
max_length = 0
column = col[0].column_letter # отримуємо буквене позначення стовпця
for cell in col:
try:
if len(str(cell.value)) > max_length:
max_length = len(cell.value)
except:
pass
adjusted_width = (max_length + 2) * 1.2
worksheet.column_dimensions[column].width = adjusted_width
У цьому прикладі ми не лише експортуємо дані, але й підганяємо ширину стовпців відповідно до вмісту, щоб вони виглядали акуратніше в Excel. Використовуємо openpyxl, щоб отримати доступ до аркуша і застосувати стилізацію.
Робота з кількома листами
Створення звітів з кількома листами може звучати як завдання для Супермена, але насправді це досить просто. Припустімо, ви хочете зберігати дані з різних річних змагань на окремих листах.
import pandas as pd
# Дані для різних років
data_2022 = {
'Ім`я': ['Дмитро', 'Олена'],
'Вік': [30, 29],
'Місто': ['Омськ', 'Владивосток'],
'Час фінішу': ['03:20:05', '03:35:40']
}
data_2023 = {
'Ім`я': ['Ігор', 'Катерина'],
'Вік': [31, 27],
'Місто': ['Челябінськ', 'Єкатеринбург'],
'Час фінішу': ['03:29:10', '03:40:20']
}
df_2022 = pd.DataFrame(data_2022)
df_2023 = pd.DataFrame(data_2023)
# Записуємо дані на різні листи
with pd.ExcelWriter('marathon_data.xlsx') as writer:
df_2022.to_excel(writer, sheet_name='2022', index=False)
df_2023.to_excel(writer, sheet_name='2023', index=False)
Цей код створює файл marathon_data.xlsx з двома листами, на яких знаходяться дані за різні роки. Це дуже зручно для розділення даних за роками, проєктами або будь-якими іншими категоріями.
2. Завжди є що покращити
Спробуйте подумати над тим, як автоматизація експорту може бути вбудована у більш складні процеси вашого проєкту. Можливо, ви захочете додати автоматичне створення діаграм після експорту? Або інтегрувати звіти з вебінтерфейсом для зручнішого доступу?
У будь-якому випадку, експорт даних у Excel — це лише початок шляху до створення красивих та інформативних звітів, які зроблять вас зіркою аналітики на вашому робочому місці чи в навчанні!
Тепер у вас є інструменти для автоматизації експорту даних, і ви знаєте, як зробити ваші звіти в Excel більш читабельними і презентабельними. Тож вперед, і нехай ваші дані завжди працюють на вас!
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ