python从列表随机取出多个数据_【python】从数组随机取数据
在神經(jīng)網(wǎng)絡(luò)中,經(jīng)常會用到批量樣本訓(xùn)練。我們需要從數(shù)組隨機取數(shù)據(jù),主要有以下幾種方法:
1、np.random.shuffle:將原數(shù)組打亂
import numpy as np
array = np.random.randint(1,100,size=10)
#[63 32 80 33 61 45 28 55 39 80]
batch_size=5
print(array[0:batch_size])
#[63 32 80 33 61]
np.random.shuffle(rand_arr)
print(array[0:batch_size])
#[33 45 80 28 55]
#另一種寫法
# rand_arr = np.arange(array.shape[0])
# np.random.shuffle(rand_arr)
# print(array[rand_arr[0:batch_size]])
# np.random.shuffle(rand_arr)
# print(array[rand_arr[0:5]])
2、np.random.choice:生成亂序的序號,從數(shù)據(jù)中取出(不改變原始序列)
import numpy as np
array = np.random.randint(1,100,size=10)
#[63 32 80 33 61 45 28 55 39 80]
batch_size=5
slice=np.random.choice(array.shape[0],batch_size)
print(array[slice])
這種方法其實就是生成輸定數(shù)量的在某個范圍內(nèi)的隨機數(shù):
1、隨機取多個數(shù),random.randint()的函數(shù)原型為:random.randint(a, b),用于生成一個指定范圍內(nèi)的整數(shù)。
import random
[random.randint(0,100) for _ in range(10)]
2、在固定列表中隨機去多個數(shù),random.sample的函數(shù)原型為:random.sample(sequence, k),從指定序列中隨機獲取指定長度的片斷。(這里的適用對象是列表類型的數(shù)據(jù))
a=[0,1,2,3,4,5,6,7,8,9]
random.sample(a, 5)
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的python从列表随机取出多个数据_【python】从数组随机取数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 充电宝使用注意哪些事项
- 下一篇: 如何用python抢课_名额不够,技术来