利用Python删除xlsx文件中的行
我有一个xlsx文件,里面有很多列,但为了举例,我只描述其中的两列:
period | value
--------------
1402 | AB
1402 | ABxx
1403 | AC
1403 | ACxx
1404 | MM
1404 | MMXX
我需要删除那些period < 1403 或 period > 1403
的行。
所以我想这样做:
- 打开上面的xlsx文件
- 遍历所有的列和行
- 把那些
period < 1403 或 period > 1403
的行复制到一个新的xlsx文件里 - 关闭这两个xlsx文件
我正在使用xlsxwriter,这是我如何从一个字典创建第一个xlsx文件的方法。
def saveDataToNewFile(filename,sheetName, data) :
# Create workbook
wb = xlsxwriter.Workbook(filename)
ws = wb.add_worksheet(sheetName)
# Write header
headers = data[0].keys()
for column, header in enumerate(headers):
ws.write(0, column, header)
date_format = wb.add_format({'num_format': 'dd/mm/yyyy'})
# Write data
for row, row_data in enumerate(data, start=1):
for column, key in enumerate(headers):
ws.write(row, column, row_data[key],date_format)
wb.close()
有没有什么好的建议呢?