csv 删除格式不正确的txt文件中表格的最后两列?

pu82cl6c  于 2023-01-15  发布在  其他
关注(0)|答案(1)|浏览(102)

要将Synchro中的数据处理为Excel中可读的格式,应删除额外的列。
来自txt文件的原始数据:

Lane Group                   WBT   WBR NBL NBT NBR SBL SBT SBR Ø3  Ø7

 Lane Configurations          <1>    0   1   2>  0   1   2   1

以csv格式读取这个txt文件会将每一行放入一个字符串中
我的目标是:1.)以csv格式读取,行/列分隔正确(使用\t作为分隔符)
2.)删除"SBR"列之后的所有列和数据
我正在使用的代码:

AMtxt = pd.read_csv('AM.txt', sep='\t+', header = None, error_bad_lines=False, warn_bad_lines = False, quoting=3, skiprows=1, engine='python')

AMtxt.drop(columns = AMtxt.columns[-2:], axis = 1, inplace = True)

AMtxt.to_csv('AM.csv')

当我尝试使用它时,它删除了read_csv阶段中某些条目的"Lane Group"行。
What CSV should look like:
The CSV looks like for problematic entries (ones where there are data in the columns I'm removing
编辑:已解决

AMtxt = pd.DataFrame(open('AM.txt','r').readlines())
AMtxt = AMtxt[0].str.split('\t', expand = True)

for column in AMtxt:
    AMtxt[column] = AMtxt[column].str.strip()

AMtxt.to_csv('AM.csv')

这个方法对我很有效。

dfuffjeb

dfuffjeb1#

对我有效的解决方案:

AMtxt = pd.DataFrame(open('AM.txt','r').readlines())
AMtxt = AMtxt[0].str.split('\t', expand = True)

for column in AMtxt:
    AMtxt[column] = AMtxt[column].str.strip()

AMtxt.drop(columns = AMtxt.columns[-(len(AMtxt.columns) - 14):], axis = 1, inplace = True)
AMtxt.to_csv('AM.csv')

相关问题