我正在解析大量逗号分隔的文件。每个文件包含数千行,每行具有相同数量的字段,填充相似或不同的字符串。我正在解析文件,并将每一行保存为Python列表。我正在寻找关于如何解析python中所有捕获列表的想法,例如,返回项[1]中唯一字符串的数量,或列表中我喜欢的任何项目。
我应该怎么做?感谢您阅读我的第一篇文章! :)
答案 0 :(得分:0)
如果您希望简明扼要,可以使用collections.Counter
,map
和operator.itemgetter
:
num_unique_in_first_column = len(collections.Counter(map(operator.itemgetter(0), rows)))
奖励:对于巨大数量的数据,不仅行中的行不适合内存,而且唯一值的集合也不适合,并且您可以估算唯一值的数量值,您可以使用HyperLogLog。你几乎肯定没有足够的数据来证明使用它,但我发现这是一个有趣的题外话。