python读取佛山的excel表格内所有sheet,固定某几列数据不删,并根据合计该行数据,若合计行数值低于90则删除这列数据
时间: 2024-05-12 19:16:35 浏览: 163
下面是一个可能的实现:
```python
import pandas as pd
# 读取Excel文件
filename = '佛山.xlsx'
excel_file = pd.ExcelFile(filename)
# 遍历所有sheet
for sheet_name in excel_file.sheet_names:
# 读取sheet数据
df = pd.read_excel(excel_file, sheet_name=sheet_name, header=0)
# 固定某几列不删
fixed_columns = ['列1', '列2']
# 计算每行合计并添加到新列
df['合计'] = df.sum(axis=1)
# 判断合计是否低于90,如果是则删除该行
df = df[df['合计'] >= 90]
# 删除不需要的列
columns_to_drop = [col for col in df.columns if col not in fixed_columns + ['合计']]
df = df.drop(columns_to_drop, axis=1)
# 保存处理后的数据到新文件
new_filename = f'{sheet_name}_处理后.xlsx'
df.to_excel(new_filename, index=False)
```
该代码使用了Pandas库来读取Excel文件和处理数据。首先,使用`pd.ExcelFile`函数读取Excel文件,然后使用`sheet_names`属性遍历所有sheet。对于每个sheet,使用`pd.read_excel`函数读取数据,然后固定某几列不删,计算每行合计并添加到新列,判断合计是否低于90并删除该行,最后删除不需要的列,并使用`df.to_excel`函数保存处理后的数据到新文件。注意,该代码并没有处理异常情况,例如Excel文件不存在或读取失败等。
阅读全文