我被困在一堆csv文件(多列,所有在第14行都有标题),我想将所有csv附加到单个excel工作表模板。模板的标题只是csv的一个子集,因此不需要复制每一列。理想情况下,我需要能够将哪个列分配到哪个新列。
到目前为止,我只能将csv文件转换为他们的excel对应物...
wb = openpyxl.load_workbook('D:/Users/abc/Desktop/Template.xlsx')
ws = wb.get_sheet_by_name('Sheet1')
for csv_file in glob.glob(csv_dir):
if csv_file.endswith('.csv'):
with open(csv_file, 'rb') as f:
reader = csv.reader(f, delimiter=',')
for row_index, row in enumerate(reader):
for column_index, cell in enumerate(row):
column_letter = get_column_letter((column_index + 1))
ws.cell('%s%s'%(column_letter, (row_index + 1))).value = cell
wb.save(filename = dest_filename)
这可能就是你要找的东西
从pandas.io.excel导入ExcelWriter导入pandas
csv_files = ['my_file1.csv', 'my_file2.csv', ..., 'my_file5.csv']
with ExcelWriter('my_excel.xlsx') as ew:
for csv_file in csv_files:
pandas.read_csv(csv_file).to_excel(ew, sheet_name=csv_file)
通过Everilä