基本取樣演算法及Python實現

2021-07-08 22:38:07 字數 1486 閱讀 4422

本文**見於 code

時不時地我們會在機器學習乃至深度神經網路中瞥見取樣演算法的身影。本文只關鍵簡單的入門級的取樣演算法及其python實現。

將調查總體全部觀察單位進行編號,再用抽籤法隨機抽取(不放回)部分觀察單位組成樣本。(ck

n )

import random

defloaddataset

(filename):

datamat =

with open(filename) as fp:

for line in fp.readlines():

curline = line.strip().split('\t')

return datamat

def******_sampling

(datamat, num):

try:

samples = random.sample(datamat, num)

return samples

except:

print('sample larger than population')

又稱機械抽樣、等距抽樣,即先將總體的觀察單位按某一順序號分成

n 個部分,依次用相等間距,從每一部分個抽取乙個觀察單位組成樣本。

def

systematic_sampling

(datamat, num):

k = int(len(datamat)/num)

samples = [random.sample(datamat[i*k:(i+1)*k], 1) for i in range(num)]

return samples

def

repretition_random_sampling

(datamat, num):

samples = [random_sampling(datamat, 1) for i in range(num)]

return samples

資料集:

a

1b 2

c 3

d 4

e 5

f 6

客戶端**:

def

main

(): datamat = loaddataset('./data.txt')

# print(random_sampling(dataset, 3))

# random_sampling(dataset, 7)

# print(systematic_sampling(datamat, 2))

print(repetition_random_sampling(datamat, 3))

if __name__ == '__main__':

main()

[1]取樣演算法的簡單實現

基本取樣演算法及Python實現

本文 見於 code 時不時地我們會在機器學習乃至深度神經網路中瞥見取樣演算法的身影。本文只關鍵簡單的入門級的取樣演算法及其python實現。將調查總體全部觀察單位進行編號,再用抽籤法隨機抽取 不放回 部分觀察單位組成樣本。ck ncnk 個部分,依次用相等間距,從每一部分個抽取乙個觀察單位組成樣本...

python實現基本演算法

classnode object 建立節點類 def init self elem 1 lchild none,rchild none self.elem elem self.lchild lchild self.rchild rchild 就是每次將樹中的節點依次取出來,放入佇列,判斷 class...

基本排序演算法 Python實現

基本排序演算法,包括氣泡排序,插入排序,選擇排序,堆排序,快速排序等。氣泡排序 複雜度是n n coding utf8 author haxtraz description 氣泡排序 def bubblesort1 a 每次找到乙個最小元素,放到陣列首部 n len a for i in range...