python random.choice报错_如何解决mtrand.RandomState.choice中的内存错误...
我試圖從1e5字符串中抽取1e7個項目,但是出現內存錯誤.從1e4字符串中抽取1e6項是很好的.我在64位機器上使用4GB RAM,并且不認為我應該在1e7達到任何內存限制.有任何想法嗎?
$python3
Python 3.3.3 (default, Nov 27 2013, 17:12:35)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>> K = 100
適用于1e6:
>>> N = int(1e6)
>>> np.random.choice(["id%010d"%x for x in range(N//K)], N)
array(['id0000005473', 'id0000005694', 'id0000004115', ..., 'id0000006958',
'id0000009972', 'id0000003009'],
dtype='
N = 1e7時出錯:
>>> N = int(1e7)
>>> np.random.choice(["id%010d"%x for x in range(N//K)], N)
Traceback (most recent call last):
File "", line 1, in
File "mtrand.pyx", line 1092, in mtrand.RandomState.choice (numpy/random/mtrand/mtrand.c:8229)
MemoryError
>>>
我發現了這個問題,但它似乎是關于捕捉這樣的錯誤而不是解決它.
對于仍然使用random.choice的解決方案或使用其他方法執行此操作,我會很滿意.謝謝.
總結
以上是生活随笔為你收集整理的python random.choice报错_如何解决mtrand.RandomState.choice中的内存错误...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: svpwm仿真_案例12:三相三线PWM
- 下一篇: python中的几种copy用法_Pyt