我有两个列表,我想从neg中减去列表pos中元素的频率。所以:
neg = [x for x in all[:800000]]
pos = [x for x in all[800000:]]
count_pos = Counter(pos)
count_neg = Counter(neg)
positivity = count_pos.subtract(count_neg)
print(positivity)我希望得到结果,但代码返回:
None有什么问题吗?
发布于 2017-12-27 22:19:18
正如问题上的注释所指出的那样,subtract方法被应用于它的对象,并返回None。要获得您想要的行为,您可以像这样使用-操作符:
positivity = count_pos - count_neg或者,您可以首先复制count_pos计数器并使用其subtract方法:
positivity = Counter(count_pos)
positivity.subtract(count_neg)在这两种情况下,最终都会得到一个包含count_pos和count_neg之间差异的变量positivity
发布于 2017-12-27 22:18:33
只需将相应的行替换为
positivity = count_pos - count_neghttps://stackoverflow.com/questions/47993554
复制相似问题