我有下面的<type 'numpy.ndarray'>
array_element = [('T10', 'R1T0') ('T20', 'R2T0') ('T31', 'R3T1') ('T21', 'R2T1')
('T10', 'R1T0') ('T20', 'R2T0')]
我想用这样的方式计算array_element
中出现的元素的数量:
('T10', 'R1T0')
与('T20', 'R2T0')
重复两次,因此最终输出:
array_element_count = [('T10', 'R1T0', 2) ('T20', 'R2T0', 2) ('T31', 'R3T1', 1)
('T21', 'R2T1', 1)]
因为array_element
是使用numpy
创建的:
dt = np.dtype([('x', np.str_, 16), ('y', np.str_, 16)])
array_element = np.zeros((len(strs),), dtype=dt)
我在计算将存储在此数组中的每个项的出现次数时遇到问题:
dt = np.dtype([('x', np.str_, 16), ('y', np.str_, 16), , ('z', np.int32)])
array_element_count = np.zeros((len(strs),), dtype=dt)
您可以在numpy中使用“unique”属性。你知道吗
然后你就能得到答案。你知道吗
您可以使用
collections.Counter
方法计算发生次数,然后合并到现有元组:示例:
你可以用熊猫,它很快。你知道吗
出去
或者另一个只有numpy的解决方案:
出去
相关问题 更多 >
编程相关推荐