使用嗅探器删除tsv的第一行
问题描述:
我有这样的代码。我试图删除有一个字段名称,说field1,field2,..,fieldn的tsv文件的第一行。使用嗅探器删除tsv的第一行
这段代码有问题。我没有得到方言部分的权利。目前它给出了一个AttributeError:'function'对象没有属性'readline。
也有一种方法,我可以从标题中提供一些字段名称供其阅读。我试着用csv.Sniffer()。has_header方法做这件事,但没有运气。
请帮
with open('outfile.txt','rb') as tsvin:
dialect=csv.Sniffer().sniff.readline(1024)
tsvin.seek(0)
reader=csv.reader(tsvin,dialect,delimiter='\t')
#has_header=csv.Sniffer().has_header(inf.read(1024))
for row in tsvin:
tsid= row[0]
full_list.append(tsid)
print [(g[0],len(list(g[1]))) for g in itertools.groupby(full_list)]
答
我得到这个权利:
data= csv.reader(open('outfile.tsv','rb'), delimiter = "\t")
fields=data.next()
for row in data:
tsid=row[0]
full_list.append(tsid)
print [(g[0],len(list(g[1]))) for g in itertools.groupby(full_list)]