我有一个包含几个元素(0,1,2,3,…(的列表
现在我有一个dict,上面的唯一元素作为键,它们的计数作为值:
{0:1, 1:3, 2:4, 3:6}
我想把它重建回一个列表
[0, 1,1,1, 2,2,2,2, 3,3,3,3,3,3]
有什么蟒蛇般的方式可以实现这一点吗?香草的或加了努皮的。
from collections import Counter
c = Counter({0:1, 1:3, 2:4, 3:6})
list(c.elements())
您可以简单地使用sum((进行以下操作:
d = {0:1, 1:3, 2:4, 3:6}
d = sum([[k]*v for k,v in d.items()], [])
这是一种numpy
方式:
d = {0:1, 1:3, 2:4, 3:6}
np.repeat(list(d.keys()), list(d.values()))