逗号和制表符分隔的tsv文件

时间:2017-02-25 23:24:29

标签: python pandas delimiter

这个问题适用于使用pandas库的python 2.7。 我下载了这个文件: http://language.media.mit.edu/data/public/wikipedia_userlang_iso639-3.zip 这是一个带有标签和逗号的文件。我在整个互联网上搜索过这个。

我想用大熊猫分开这个。这会产生错误:

df = pd.read_table('wikipedia_userlang_iso639-3.tsv', sep= '\t')

print df [:10]

因为该文件也有逗号。

非常感谢帮助!

1 个答案:

答案 0 :(得分:1)

该文件无法解析为CSV文件,因为每行不具有固定数量的字段(范围从2到241)。您必须自己解析并决定如何为每个用户处理可变数量的语言:

import codecs

with codecs.open('wikipedia_userlang_iso639-3.tsv', 'r', 'utf-8') as handle:
    for line in handle:
        chunks = line.strip().split('\t')

        username = chunks[0]
        languages = [c.split(',') for c in chunks[1:]]

        # Do something with the above variables