我有一个列表的文本文件。当我使用pandas在python中打开文件时,它显示出该文件仅包含一列,但其中包含许多列。我尝试使用pd.DataFrames,sep ='\ s *',sep ='\ t',但由于只有一列,因此我无法选择该列。我什至尝试指定标题,但标题移到外部右侧,并将整个文件仅指定为一列。我也尝试过.loc方法,并提到了特定的列号,但是它总是返回行。我想选择第一列(A,A),第三列(HIS,PRO)和第四列(0、0)。 我想获取上述特定列并将其打印为CSV文件。 这是我与一些文件组件一起使用的代码。
1)使用pd打开文件后:
[599行x 1列]
2)文件格式:
pdb_id: 1IHV
0 radii_filename: MD_threshold: 4
1 A 20 HIS 0 MaximumDistance
2 A 21 PRO 0 MaximumDistance
3 A 22 THR 0 MaximumDistance
任何帮助将不胜感激。
3)代码:
import pandas as pd
df= pd.read_table("file_path.txt", sep= '\t')
U= df.loc[:][2:4]
任何帮助将不胜感激。
答案 0 :(得分:1)
如果有人得到这样的文件,则可以使用以下代码将其打开并选择该列:
f=open('file.txt',"r")
lines=f.readlines()
result=[]
for x in lines:
result.append(x.split(' ')[range])
for w in result:
s='\t'.join(w)
print(s)
范围是要选择的列。