首页 > 解决方案 > 删除多个 tsv 文件不需要的列

问题描述

我有一个文件夹包含 500 个 tsv 文件,我需要修改所有这些文件。

这是原始数据的样子: 原创 tsv

我想删除一些我不需要的 imfos,例如我想保留我圈出的部分并删除分开的 X 我想要的是

我已经使用以下代码删除了注释部分:

import os
import pandas as pd

path = "All_TSV_Files"
files = [file for file in os.listdir(path) if file.endswith(".tsv")]

c=0
for file in files:
    df = pd.read_csv(os.path.join(path, file), 
                     comment='#', 
                     header=None, 
                     sep='\t',engine='python',error_bad_lines=False)

    #save it as txt file
    df.to_csv(os.path.join(path, f'admin{c}.txt'),index=False,header=False)
    c+=1

现在我还需要删除前两列,所以结果是这样的: 结果期望

当前的 txt 文件如下所示:

Precision,_,
agriculture,_,
(,_,
PA,_,
),_,
and,_,
information,_,
technology,_,
(,_,
IT,_,
),_,
are,_,
closely,_,
interwoven,_,
.,_,
The,_,

我需要将“,”更改为“”空间。

标签: pythonpandas

解决方案


我现在的 df 看起来像

1-1,0-7,1677112,_
1-2,9-10,A,Project[1]
1-3,11-14,new,Project[1]
1-4,15-27,kernel-based,Project[1]
1-5,28-36,learning,Project[1]
1-6,37-46,algorithm,Project[1]
1-7,47-53,called,_
1-8,54-60,kernel,Project[2]
1-9,61-67,affine,Project[2]

我需要删除前 2 列,使其变为:

1677112,_
A,Project[1]
new,Project[1]
kernel-based,Project[1]
learning,Project[1]
algorithm,Project[1]
called,_
kernel,Project[2]
affine,Project[2]

推荐阅读