【发布时间】:2016-07-13 22:00:30
【问题描述】:
假设我们有一个 numpy 数组:
import numpy as np
arr = np.array([[ 5, 9],[14, 23],[26, 4],[ 5, 26]])
我想用它的出现次数替换每个元素,
unique0, counts0= np.unique(arr.flatten(), return_counts=True)
print (unique0, counts0)
(数组([ 4, 5, 9, 14, 23, 26]), 数组([1, 2, 1, 1, 1, 2]))
所以 4 应该替换为 1、5 替换为 2 等以获得:
[[ 2, 1],[1, 1],[2, 1],[2, 2]]
有没有办法在 numpy 中实现这一点?
【问题讨论】:
标签: python arrays numpy multidimensional-array replace