【发布时间】:2021-09-08 13:11:01
【问题描述】:
我有一个 6 列的 Excel 表。 如果发现另一个特定文本作为另一列单元格的一部分,我想读取该文件并添加另一列以插入特定文本。
我试过了:
import csv
import openpyxl
import pandas as pd
#writer = pd.ExcelWriter('testx.xlsx', engine='xlsxwriter')
#writer.save()
#from openpyxl import load_workbook
file = 'testx.xlsx'
#book = load_workbook(file)
#writer = pd.ExcelWriter(file, engine = 'openpyxl')
#writer.book = book
df = pd.read_excel('testx.xlsx')
#writer = pd.ExcelWriter('testx.xlsx')
df['Brand'] = df['Keyword'].map({'o.p.1.':33, 'sebastian':'seb', 'd.p.i':34})
df.to_excel('testx.xlsx')
#writer.save()
workbook = writer.book
workbook.filename = 'testx.xlsx'
writer.save()
#writer.close()
#delete_files()
但总是有问题..
需要的 Ex 输出: 我填充了 A-F 列,我需要自动填充 G 列
z image_count x 提取内容关键词 L_brand 品牌
Z1 2 x Po , Po , N
Z2 1 x D.P.I NAIL LACQUER VERNIS A ONGLES D.P.I NAIL LACQUER VERNIS A ONGLES d.p.i, p.i, d.p.i, p.i, , Y
Z3 1 x O.P.1 NAIL LACQUER VERNIS A ONGLES O.P.1 NAIL LACQUER VERNIS A ONGLES o.p.1, o.p, o.p.1, , Y
如果我使用 writer,我不会收到错误,但它会检索一张空白纸
import csv
import openpyxl
import pandas as pd
file = 'testx.xlsx'
df = pd.read_excel(file)
writer = pd.ExcelWriter('testx.xlsx', engine='xlsxwriter')
df['Keyword'] = df['Brand'].map({'o.p.1.':33, 'sebastian':'seb', 'd.p.i':34})
df.to_excel('testx.xlsx')
writer.save()
上面的编辑代码不再抛出错误,但加载后,当我想打开 excel 文件时,它说有一个错误,它必须尽可能多地恢复并检索一张空白表。
【问题讨论】:
-
您能否在问题中包含 csv 输入文件的示例> 请以 SO 社区可以复制和粘贴的格式发布数据
-
我已经从我的 xlsx 文件中发布了数据。现在你可以复制粘贴了。
标签: python-3.x pandas xlsxwriter openxlsx