目的:
读取excel表格中指定sheet页,保留excel中原有的公式,数据格式,并对指定列重新写入数据。
原有表格如下所示:
解决思路:
使用openpyxl来实现
具体代码:
-
import pandas
as pd
-
import numpy
as np
-
import openpyxl
as op
-
import os
-
os.chdir(
r'E:\old\工作\临时任务\抽纸盒\2022-04-11')
-
file_path=
'抽纸盒数据统计.xlsx'
-
-
data = pd.read_excel(
'data.xls')
-
print(data.head())
-
# 将数据转为列表格式
-
list_
1
=
data[
'x'].tolist()
-
print(list_
1)
[230, 510, 74, 89, 180]
-
wb
= op.load_workbook(
file_path) # 加载数据
-
write_
data
= wb[
'占比'] # 加载需要改变的sheet页
-
# .cell(row,
column,
value) 即行,列,数值
-
for i
in range(
1,len(list_
1)):
-
write_
data.cell(i
+
1,4,list_
1[i-
1])
-
wb.save(
'ceshi.xlsx')
结果如下所示:
注:如有不对,欢迎指正。