Можно ли использовать библиотеку Pandas для создания границ в ячейках Excel?

Как использовать pandas для вставки данных из базы данных в Excel и нарисовать границы вокруг вставленных данных? Я не могу найти специфического решения через pandas, только перебор каждой ячейки с данными для прорисовки границ. Мне кажется, что это не оптимальный способ. При вставке данных из базы, pandas прорисовывает границы вокруг заголовка таблицы. Можно ли как-то использовать pandas, чтобы автоматически нарисовать границы вокруг всего массива данных в Excel?
  • 14 мая 2024 г. 20:10
Ответы на вопрос 2
Да, можно использовать библиотеку Pandas для создания границ в ячейках Excel. Для этого необходимо воспользоваться библиотекой openpyxl, которая позволяет работать с документами Excel, а также настроить стили ячеек.

Пример кода для вставки данных из базы данных в Excel с нарисованными границами вокруг данных:

```python
import pandas as pd
from openpyxl import Workbook
from openpyxl.styles import Border, Side

# создаем DataFrame с данными
data = {'Имя': ['Алексей', 'Ирина', 'Павел'],
        'Возраст': [25, 30, 35],
        'Зарплата': [50000, 60000, 70000]}
df = pd.DataFrame(data)

# создаем новый документ Excel
wb = Workbook()
ws = wb.active

# вставляем данные из DataFrame в Excel
for r in dataframe_to_rows(df, index=False, header=True):
    ws.append(r)

# применяем стиль для создания границ вокруг данных
for row in ws.iter_rows(min_row=2, min_col=1, max_row=len(df)+1, max_col=len(df.columns)):
    for cell in row:
        cell.border = Border(left=Side(border_style='thin'),
                              right=Side(border_style='thin'),
                              top=Side(border_style='thin'),
                              bottom=Side(border_style='thin'))

# сохраняем документ Excel
wb.save('output.xlsx')
```

В этом примере мы сначала создаем DataFrame с данными, затем создаем новый документ Excel и вставляем данные из DataFrame в него. После этого мы применяем стиль Border для каждой ячейки в диапазоне данных, чтобы нарисовать границы вокруг них. Наконец, сохраняем документ Excel с нарисованными границами.

Таким образом, вы можете использовать pandas в сочетании с библиотекой openpyxl для автоматического добавления границ вокруг данных при вставке их в Excel.
Посмотрите библиотеку https://pypi.org/project/openpyxl/
Похожие вопросы