Pandas对Excel进行写入操作
from genericpath import exists
import pandas as pd
import os
file_dir = 'D:/program/write/'
# data = pd.read_excel("D:/program/test.xlsx", header=None)
data = pd.read_excel("D:/program/test.xlsx", index_col='Qty2')
exists = os.path.exists(file_dir)
if not exists:
os.makedirs(file_dir)
# to_excel不返回值
# data.to_excel(os.path.join(file_dir,"result.xlsx"), sheet_name="数量") # sheet name 指定表格名
# data.to_excel(os.path.join(file_dir, "result.xlsx"), na_rep="缺失") # na_rep补充无数据的单元格数据,默认补充位空
# data.to_excel(os.path.join(file_dir, "result.xlsx"), columns=['Qty1'])
# data.to_excel(os.path.join(file_dir, "result.xlsx"), columns=[1, 3]) # 当获取dataframe对象时,指定了header=None,则可以在写入表格时指定参数columns为需要输出列的列序号(从0开始)列表([0, 1, 2 ….])
# 若获取dataframe对象时,指定header!=None,则只能使用列名进行指定(columns=['Qty1','Qty2'])
# data.to_excel(os.path.join(file_dir, "result.xlsx"), header=True) # 写入包括header在内的dataframe对象的所有行数据
# data.to_excel(os.path.join(file_dir, "result.xlsx"), header=False) # 写入包括header在内的dataframe对象的去除第一行的所有行数据
# data.to_excel(os.path.join(file_dir, "result.xlsx"), header=['料号', '周一数量', '周二数量', '周三数量', '周四数量']) # 写入包括header在内的dataframe对象的所有行数据,并替换第一行数据为指定列表内数据,但列表提供的数据数量必须等于dataframe对象的列数,否则出现报错ValueError: Writing 6 cols but got 5 aliases
# data.to_excel(os.path.join(file_dir,'result.xlsx'), index=True, index_label='序号') # 写入包括指定索引列在内的所有列数据,且将索引列放在第一列,并将索引列列名修改为index_label的指定名称
# 注:只有index=True时,index_label才生效
# data.to_excel(os.path.join(file_dir,'result.xlsx'), index=False) # 不写入索引列
# data.to_excel(os.path.join(file_dir,'result.xlsx'), startrow=1, startcol=2) # 写入起始行和起始列空多少行
# 利用 DataFrame函数将字典转化为dataframe对象
# stuID = [50101, 50102, 50103, 50104, 50105]
# name = ['张三','李四','王五','孙甲','杨乙']
# Chinese = [96, 99, 93, 89, 90]
# maths = [100, 99, 99, 92, 95]
# English = [98, 98, 95, 90, 91]
# data1 = {'学号': stuID, '姓名': name, '语文': Chinese, '数学': maths, '英语': English}
# pd.DataFrame(data1).to_excel(os.path.join(file_dir, 'result.xlsx'), sheet_name='Sheet1', index=False)
# 利用 DataFrame函数将二位列表转化为dataframe对象
# header = ["学号", "姓名", "语文", "数学", "英语"]
# form = [["50101", "张三", "96", "100", "98"],
# ["50102", "李四", "99", "99", "98"],
# ["50103", "王五", "93", "99", "95"],
# ["50104", "孙甲", "89", "92", "90"],
# ["50105", "杨乙", "90", "95", "91"]]
# df = pd.DataFrame(form, columns=header)
# df.to_excel(os.path.join(file_dir, 'result.xlsx'), sheet_name='Sheet1', index=False)
# 将包含多个dataframe对象的df对象写入到一个excel文件中
# with pd.ExcelWriter('data.xls') as writer:
# i = 1
# for dataframe in df:
# dataframe.to_excel(writer, sheet_name='Sheet'+str(i), index=False)
# i += 1
pandas的Excel文件读写(二)——将数据写入文件_dsy0221的博客-CSDN博客_pandas将数据写入excel文件
来源:mandy__