使用python,打开excel,将文件中所有sheet内的第18列、第19列、第20列数值都为0的行删除
时间: 2023-05-20 12:01:44 浏览: 56
可以使用 pandas 库来实现这个功能,具体代码如下:
```python
import pandas as pd
# 读取 Excel 文件
df = pd.read_excel('your_file.xlsx', sheet_name=None)
# 遍历所有 sheet
for sheet_name, sheet_data in df.items():
# 删除第 18、19、20 列数值都为 0 的行
sheet_data.drop(sheet_data[(sheet_data.iloc[:, 17:20] == 0).all(axis=1)].index, inplace=True)
# 保存修改后的 Excel 文件
with pd.ExcelWriter('your_file.xlsx') as writer:
for sheet_name, sheet_data in df.items():
sheet_data.to_excel(writer, sheet_name=sheet_name, index=False)
```
这段代码会读取名为 `your_file.xlsx` 的 Excel 文件,遍历其中所有 sheet,删除第 18、19、20 列数值都为 0 的行,最后将修改后的结果保存回原文件。
相关问题
需求描述:使用python,打开excel,将文件中所有sheet内的R列、S列、T列数值都为0的行删除
可以使用Python中的pandas库来实现这个需求。具体代码如下:
```python
import pandas as pd
# 读取Excel文件
df = pd.read_excel('your_file_path.xlsx', sheet_name=None)
# 遍历每个sheet
for sheet_name in df.keys():
# 删除R、S、T列数值都为0的行
df[sheet_name] = df[sheet_name][(df[sheet_name][['R', 'S', 'T']] != 0).all(axis=1)]
# 将修改后的数据写回Excel文件
with pd.ExcelWriter('your_file_path.xlsx') as writer:
for sheet_name, sheet_data in df.items():
sheet_data.to_excel(writer, sheet_name=sheet_name, index=False)
```
这段代码会打开指定的Excel文件,遍历每个sheet,将R、S、T列数值都为0的行删除,最后将修改后的数据写回Excel文件。
使用python,打开excel,将文件中所有sheet内的每一rows的第18、19、20columns的数值相加为0的整行删除
可以使用 pandas 库来实现这个功能,具体代码如下:
```python
import pandas as pd
# 读取 Excel 文件
df = pd.read_excel('your_excel_file.xlsx', sheet_name=None)
# 遍历每个 sheet
for sheet_name, sheet_data in df.items():
# 将第 18、19、20 列相加
sum_col = sheet_data.iloc[:, 17:20].sum(axis=1)
# 找到和为 0 的行
zero_sum_rows = sheet_data[sum_col == 0]
# 删除这些行
sheet_data.drop(zero_sum_rows.index, inplace=True)
# 将修改后的数据保存回 Excel 文件
with pd.ExcelWriter('your_excel_file.xlsx') as writer:
for sheet_name, sheet_data in df.items():
sheet_data.to_excel(writer, sheet_name=sheet_name, index=False)
```
这段代码会读取指定的 Excel 文件,遍历每个 sheet,将每个 sheet 内的第 18、19、20 列相加,找到和为 0 的行,然后删除这些行。最后将修改后的数据保存回 Excel 文件。