【发布时间】:2020-02-06 01:57:04
【问题描述】:
我有一个这样的 numpy 数组:
nparr = np.asarray([[u'fals', u'nazi', u'increas', u'technolog', u'equip', u'princeton',
u'realiti', u'civilian', u'credit', u'ten'],
[u'million', u'thousand', u'nazi', u'stick', u'visibl', u'realiti',
u'west', u'singl', u'jack', u'charl']])
我需要做的是计算每个项目的频率,并在同一位置有另一个与每个项目的频率对应的numpy数组。
所以,这里我的数组形状是(2, 10)。我需要有一个形状为(2, 10) 但具有频率值的numpy 数组。因此,上面的输出将是:
[[1, 2, 1, 1, 1, 1, 2, 1, 1, 1]
[1, 1, 2, 1, 1, 2, 1, 1, 1, 1]]
到目前为止我做了什么:
unique, indices, count = np.unique(nparr, return_index=True, return_counts=True)
虽然通过这种方式计数是唯一值的频率,但它并没有给我与原始数组相同的形状。
【问题讨论】:
-
你有一个丢失的报价,SO的代码标记很容易找到和修复
-
@MadPhysicist 我没听明白,缺少的报价是什么!
-
u'realiti缺少报价 -
糟糕感谢您提到@yatu。已更新。
-
不用担心。我提出了一个更简单的答案。你离开是因为你想要倒排索引,而不是原始索引。