读取同一文件夹下的所有csv文件,依据列名提取三列,按照第一列大于0的去掉,第二列变成(第二列+第三列)乘以2,最后该目录下的csv文件由上改动后再分别再写入新的csv文件,新的csv文件后缀new
时间: 2024-03-20 10:43:09 浏览: 57
你可以使用 `pandas` 模块来读取和处理 csv 文件,然后使用 `os` 模块来遍历当前文件夹下的所有 csv 文件,代码如下所示:
```python
import os
import pandas as pd
# 定义要提取的列名
columns = ['col1', 'col2', 'col3']
# 遍历当前文件夹下的所有 csv 文件
for filename in os.listdir('.'):
if filename.endswith('.csv'):
# 读取 csv 文件
df = pd.read_csv(filename)
# 提取指定的列
df = df[columns]
# 去掉第一列大于0的行
df = df[df['col1'] <= 0]
# 对第二列和第三列进行计算
df['col2'] = (df['col2'] + df['col3']) * 2
# 输出到新的 csv 文件
output_filename = f"new_{filename}"
df.to_csv(output_filename, index=False)
```
这段代码会遍历当前文件夹下的所有 csv 文件,读取每个文件,提取指定的列,进行计算和过滤,然后将结果输出到新的 csv 文件中。你需要将 `columns` 替换为实际的列名,以及根据需要修改计算和输出的逻辑。新的 csv 文件的文件名会在原有文件名前加上 "new_" 前缀,后缀不变。
阅读全文