合并文件夹中的所有 CSV,然后使用 Python 删除前 3 列

Combine All CSVs in Folder then Delete First 3 Column using Python

我正在尝试将多个 CSV 合并到一个文件夹中,然后删除前 3 列。我的代码可以很好地组合文件,但我不能删除列。谁能看到这个问题?

import pandas as pd
import glob

path = r'C:\Users\****' # use your path
all_files = glob.glob(path + "/*.csv")

li = []

for filename in all_files:
    df = pd.read_csv(filename, index_col=None, header=0)
    li.append(df)

frame = pd.concat(li, axis=0, ignore_index=True)

frame.drop(frame.columns[[0, 1, 2]], axis=1)

print(frame)
frame.to_csv('out.csv', index=False)

您可以使用 . iloc[:,3] 和 select 您想要的列索引:


from pathlib import Path
import pandas as pd

path = Path('C:\Users\****') # use your path
all_files = path.glob("*.csv")

frame = pd.concat(
(pd.read_csv(file_, index_col=None, header=0).iloc[:,3:]
for file_ in all_files), axis=0, ignore_index=True)

frame.to_csv('out.csv', index=False)