python读取佛山的excel表格内所有sheet,如果列明不是‘区’,‘省’,‘街道’, id ,‘日期’,‘数量’, 国家 ,并且获取最后一行第一列之后的数据,数值低于90则删除这列数据,将处理好的数据保存到原表格
时间: 2023-10-03 19:03:20 浏览: 177
下面是实现的Python代码:
```python
import pandas as pd
# 读取Excel文件
filename = '佛山.xlsx'
xls = pd.ExcelFile(filename)
# 遍历所有sheet
for sheet_name in xls.sheet_names:
# 读取当前sheet
df = pd.read_excel(xls, sheet_name)
# 获取所有列名
columns = df.columns.tolist()
# 判断列名是否符合要求
if '区' not in columns or '省' not in columns or '街道' not in columns or 'id' not in columns or '日期' not in columns or '数量' not in columns or '国家' not in columns:
continue
# 获取最后一行第一列之后的数据
data = df.iloc[-1, 1:].tolist()
# 判断数据是否需要删除
for value in data:
if isinstance(value, (int, float)):
if value < 90:
df = df.drop(columns=data.index(value)+1)
# 保存处理好的数据到原表格
writer = pd.ExcelWriter(filename, engine='openpyxl')
writer.book = pd.load_workbook(filename)
df.to_excel(writer, sheet_name=sheet_name, index=False)
writer.save()
```
阅读全文