Pandas Создание Excel с таблицей в формате таблицы - PullRequest
1 голос
/ 19 марта 2020

У меня есть файл .csv, который я конвертирую в табличный формат, используя следующий скрипт python. Чтобы сделать это полезным, мне нужно создать в Excel таблицу, в которой хранятся данные (фактически отформатированные в виде таблицы (Вставка> Таблица). Это возможно в python? Мне кажется, это должно быть относительно просто, но ничего не могу найти в inte rnet.

Идея в том, что python берет файл csv, преобразует его в xlsx с таблицей, встроенной в sheet1, и затем перемещает ее в правильный папка.

import os
import shutil
import pandas as pd

src = r"C:\Users\xxxx\Python\filename.csv"
src2 = r"C:\Users\xxxx\Python\filename.xlsx"

read_file = pd.read_csv (src) - convert to Excel
read_file.to_excel (src2, index = None, header=True)

dest = path = r"C:\Users\xxxx\Python\repository"

destination = shutil.copy2(src2, dest)

1 Ответ

0 голосов
/ 19 марта 2020

Редактировать: меня отвлекло оригинальное MWE.

Это должно работать, используя xlsxwriter:

import pandas as pd
import xlsxwriter

#Dummy data
my_data={"list1":[1,2,3,4], "list2":"a b c d".split()}
df1=pd.DataFrame(my_data)
df1.to_csv("myfile.csv", index=False)
df2=pd.read_csv("myfile.csv")

#List of column name dictionaries
headers=[{"header" : i} for i in list(df2.columns)]

#Create and propagate workbook
workbook=xlsxwriter.Workbook('output.xlsx')

worksheet1=workbook.add_worksheet()

worksheet1.add_table(0, 0, len(df2), len(df2.columns)-1, {"columns":headers, "data":df2.values.tolist()})

workbook.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...