我试图在多维数组的第二个值中计算唯一字符串的数量。
我当前的代码是:
>>> a=[['1a','1b','1c'],['2a','2b','2c'],['3a','3b','3c']]
>>> from collections import Counter
>>> result=Counter(a[1]);
>>> result
Counter({'2a': 1, '2b': 1, '2c': 1})
但是,我希望输出是这样的:
Counter({'1b': 1, '2b': 1, '3b': 1})
计算每个列表中的第二个值,而不是第二个列表中的三个值。
我意识到这Counter(a[1])
是错误的,但是我不确定如何以自己想要的方式进行操作。
要计算第二个“列”,请尝试以下操作:
a = [['1a','1b','1c'],['2a','2b','2c'],['3a','3b','3c']]
from collections import Counter
result = Counter(zip(*a)[1])
print result
输出:
Counter({'3b': 1, '1b': 1, '2b': 1})
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句