第4章数据处理
本章教学目标
?掌握电子表格数据处理操作。
?初步掌握基于电子表格的数据分析。
?初步掌握用Python编程处理电子表格数据。
?初步掌握基于pandas的数据处理方法。
4.1电子表格
4.1.1工作簿与工作表
工作簿格式:.et/.xlsx/.xlsm/.xls/.txt/.csv
工作簿模板:.ett/.xltx/.xltm
4.1.2单元格
数据填充:序列填充/公式填充
单元格格式:数字格式/对齐方式/边框填充
数据有效性:范围限制/下拉列表
计算:公式(相对/绝对/混合引用)/函数库
4.1.3工作表格式化
行/列操作:自动调整/合并居中
条件格式:色阶/数据条/图标集
4.1.4图表
图表类型:柱形图/折线图/组合图
图表元素:标题/坐标轴/数据标签
高级功能:双坐标轴/趋势线/误差线
4.1.5排序和筛选
排序方式:单条件/多条件/自定义
筛选类型:文本筛选/数字筛选/颜色筛选
4.1.6分类汇总
操作流程:排序→分类字段→汇总方式
高级应用:嵌套汇总/分级显示
4.1.7数据透视表
创建步骤:字段拖拽→布局设置→样式应用
高级功能:切片器/值字段设置
4.2基于电子表格的数据分析
4.2.1单变量求解
应用场景:方程求解/投资分析
操作要点:目标单元格/可变单元格设置
解方程56x4+8x3+34x+8=0
4.2.2模拟运算表
单变量模拟:参数变化分析
双变量模拟:多参数交互分析
4.2.3规划求解
核心要素:目标函数/约束条件/求解方法
典型案例:路径优化
4.2.3规划求解
典型案例:排班问题
某灾难救援临时医疗机构集合了全科医师20人,根据各医疗岗位的配备需求,周一至周日分别需要6、4、5、6、7、8、7人。若每名全科医师每周连续上5天班,利用规划求解优化排班效率,计算需要参加排班的最少全科医师人数
4.3用Python编程处理电子表格
4.3.1基本操作
库使用:openpyxl核心API
文件操作:创建/读取/写入工作簿
importopenpyxl
wb=openpyxl.Workbook()
ws=wb.active
ws[A3]=1.25#为A3单元格赋值
celldata=ws.cell(3,2).value#第3行第2列的值
wb=openpyxl.load_workbook(./新建工作表.xlsx)
ws=wb[Sheet1]
wb.save(C:/data/test.xlsx)
4.3.2大量数据汇总
自动化流程:目录遍历→数据提取→合并写入
代码示例:Python脚本实现多文件整合
importopenpyxl,os
wb=openpyxl.Workbook()
ws=wb.active
title=[姓名,身高,体重,左眼视力,右眼视力,舒张压,收缩压]
foriinrange(1,8):
ws.cell(1,i).value=title[i-1]#列表从0起始,而列标从1起始
files=os.listdir(C:/体检/)
r=2#从第2行开始汇总
forfinfiles:
iff.upper()[-5:]==.XLSX:#无论大小写
wb1=openpyxl.load_workbook(C:/体检/+f)
ws1=wb1[Sheet1]
foriinrange(1,8):
ws.cell(r,i).value=ws1.cell(i+1,2).value
r+=1
wb.save(filename=./数据汇总.xlsx)
4.4pandas数据处理
4.4.1核心数据结构
Series:一维带标签数组
DataFrame:二维表格型数据结构
df=pd.read_excel(./参赛作品.xlsx,sheet_name=0)
df[:5]#显示前5行
4.4.2数据操作
数据清洗:缺失值处理/重复值删除
统计分析:聚合计算/分组操作
数据转换:列操作/条件筛选
4.4.3数据持久化
文件导出:CSV/Excel格式
数据库交互:SQL表读写
df.to_csv(C:/data/data.csv,mode=w,header=True,encoding=gbk,index=False)
df.to_excel(C:/data/data.xlsx,sheet_name=Sheet1,header=True,na_rep=N/A,index=False)
importsqlite3
conn=sqlite3.con