怎么通过Python读取excel中的表单数据,表单不止一张,并重新保存为下列形式?需要完整代码
28条回答 默认 最新
关注
获得1.20元问题酬金 引自免费微信小程序:皆我百晓生
由于您提供的Excel表单内容是在文本中而非实际文件,我将基于假设它们存储在名为"sales_order1.xlsx"和"sales_order2.xlsx"的两个Excel文件中,并且数据分别位于第一个工作表上。这里使用pandas库来读取Excel文件并处理数据。
首先,请确保已安装pandas和openpyxl库(用于处理较新格式的Excel文件):
pip install pandas openpyxl
然后,您可以使用以下Python代码来读取这两个Excel文件并重新整理数据:
import pandas as pd # 读取图1中的Excel表单数据 df1 = pd.read_excel('sales_order1.xlsx', header=None, skiprows=[0, 1, 2, 3, 4], usecols='A:O') df1.columns = ['行号', '商品编号', '商品全名', '规格', '单位', '数量', '单价', '金额', '折扣', '折后金额'] df1.dropna(inplace=True) # 删除空行 # 读取图2中的Excel表单数据,假设制单日期、库房、单据编号在同一列合并为一行 df2 = pd.read_excel('sales_order2.xlsx', skiprows=1) df2['商品全名'] = df2['商品全名'].str.replace('赠品标记', '') # 去除赠品标记列内容 df2.rename(columns={'往来单位': '客户名称', '商品编号': '商品编号'}, inplace=True) df2[['制单日期', '库房', '单据编号']] = df2['制单日期 制单日期.1 库房 单据编号 商品编号'.split()].apply(lambda x: x.str.cat(sep=' '), axis=1) df2.drop(['制单日期 制单日期.1 库房 单据编号 商品编号'], axis=1, inplace=True) # 合并两个表单的数据(如果需要) # 这里假设可以根据'单据编号'进行合并,实际情况请根据具体数据调整 merged_df = pd.concat([df1, df2[df2.columns.intersection(df1.columns)]], ignore_index=True) # 保存整理后的数据到新的Excel文件 merged_df.to_excel('reorganized_sales_orders.xlsx', index=False)
请注意,上述代码是根据您提供的信息模拟编写的,实际应用时可能需要针对您的Excel文件结构进行适当调整。例如,对于图2中的数据,可能需要进一步处理以适应合并的需求,因为“制单日期”、“库房”和“单据编号”在一个单元格内合并显示了,这在读取时需要特殊处理。
解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 visa版本没问题,串口调试助手调试串口正常使用,但是labview刷新不出来
- ¥15 java MQTT SSL证书
- ¥20 求一个手机号或者Wxid转微信号的工具
- ¥20 msconfig开启安全引导后重启电脑黑屏
- ¥15 对email表单做了一般邮箱正则校验,现在需要额外输入为hotmail或outlook、gmail时做特定邮箱校验,不符合提示出来。并且保证不影响其他正确的邮箱格式通过校验,通过不会提示。
- ¥20 Win11,bitblocker密钥恢复失败
- ¥15 stm32 cubemx配置sdram,初始化后无法读写sdram
- ¥100 上位机到dtu再到485继电器模块 目前结束命令有百分之2左右概率执行失败求指导
- ¥15 ifcopenshell库在vs2019下的配置
- ¥15 whql认证的windows硬件开发者账号个人验证不匹配问题