我有一个.csv文件的地质构造和每一个地层的化石物种的出现。在.csv文件中,每个化石都有自己的行,其中包括地层名称。在
我在下面写的代码可以很好地打印出地层出现的次数。在
import csv
from collections import Counter
out=open("BivalviaGRDWIS.csv", "rb")
data=csv.reader(out)
data.next()
data=[row for row in data]
out.close()
formations = []
for row in data:
if row[13]=='':
continue
else:
formations.append(row[13])
print Counter(formations)
然而,可能会有重复的化石名称,这将破坏计数;我只想知道每一个地层的独特化石的数量。我可以添加什么来计算.csv文件中单个列的一个部分中的唯一元素,而不是所有元素?在
你需要记录你已经看到的每一个地层的化石。{A{a1}我们可以通过编码来防止
上面的代码在一个生成器表达式中将CSV行直接“流化”到
Counter()
对象中;不保留中间数据。在每行测试:
我假设化石名称在第0列;您在问题中没有指定如何提取化石名称。在
相关问题 更多 >
编程相关推荐