首页 > 解决方案 > numpy 随机选择返回浮点数

问题描述

在我的代码中,我使用代码随机生成一个大型 numpy 数组的索引

import numpy as np
random = np.random.RandomState(seed=1000)

r = 140000
c = 30000
k = 210000000
flat_indx = random.choice(xrange(r*c),k,replace=False)

但它返回浮点数,因此我的解散代码失败

Indx = np.unravel_index(flat_indx,(U,I))

我检查了返回数组的类型,它是

输入“numpy.float64”

以为你和我是 np.unit64。

这是我在 python shell 上尝试时得到的

> random.choice(xrange(140000*30000),10,replace=False) array([2.63189959e+09, 9.52388615e+08, 2.79972090e+09, 1.66392341e+09,
>        3.96565768e+09, 4.18275392e+09, 2.18902320e+07, 2.54430836e+09,
>        1.52407003e+08, 3.36787629e+09])

我怎样才能纠正它?

标签: pythonpython-2.7numpyrandom

解决方案


推荐阅读