writer读取佛山的excel表格所有的sheet,如果列名称不是‘区’,‘省’,‘街道’, id ,‘日期’,‘数量’, ‘国家’ ,则以最后一行第一列之后的数据,判断数值是否低于90,低于则删除这列数据,最后将处理好的数据保存到原表格
时间: 2024-05-11 07:14:57 浏览: 82
读取excel表格
中。
以下是代码实现:
```python
import pandas as pd
# 读取Excel文件
filename = '佛山.xlsx'
data = pd.read_excel(filename, sheet_name=None)
# 循环遍历所有sheet
for sheet_name in data.keys():
# 获取当前sheet的列名
columns = data[sheet_name].columns.tolist()
# 判断列名是否需要删除数据
if '区' not in columns and '省' not in columns and '街道' not in columns and 'id' not in columns and '日期' not in columns and '数量' not in columns and '国家' not in columns:
# 获取最后一行第一列之后的数据
last_row = data[sheet_name].iloc[-1, 1:]
# 判断数据是否低于90
need_drop = last_row < 90
# 删除数据
data[sheet_name] = data[sheet_name].drop(columns=last_row.index[need_drop])
# 保存处理好的数据到原表格中
with pd.ExcelWriter(filename) as writer:
for sheet_name in data.keys():
data[sheet_name].to_excel(writer, sheet_name=sheet_name, index=False)
```
该代码首先读取Excel文件,然后循环遍历所有sheet,获取当前sheet的列名并判断是否需要删除数据。如果需要删除,就获取最后一行第一列之后的数据,并判断是否低于90,然后删除数据。最后,将处理好的数据保存到原表格中。
阅读全文