Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision | |||
| 4._주어진_배열에서_무작위_추출 [2023/09/05 15:46] – external edit 127.0.0.1 | 4._주어진_배열에서_무작위_추출 [2026/03/24 16:17] (current) – removed admin | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | 무작위 추출의 경우 | ||
| - | < | ||
| - | using Pkg | ||
| - | Pkg.add(" | ||
| - | </ | ||
| - | 로 StatsBase 패키지를 설치한 후 using을 해주어야 한다. | ||
| - | |||
| - | < | ||
| - | using StatsBase | ||
| - | |||
| - | x = 1:10; | ||
| - | sample(x) | ||
| - | </ | ||
| - | |||
| - | 하면 1부터 10까지 공차가 1인 등차수열이 x에 들어가고 | ||
| - | sample(x)를 하면 x의 요소를 균일한 가중치로 무작위 복원 추출을 한다. | ||
| - | |||
| - | 만약 가중 복원 추출을 원하면 | ||
| - | < | ||
| - | using StatsBase | ||
| - | |||
| - | x = 1:10; | ||
| - | weights = rand(10); # [0, 1) 의 범위에서 난수 10개 생성 후 1차원 배열로 만듦 | ||
| - | sample(x, Weights(weights)) | ||
| - | </ | ||
| - | |||
| - | 이렇게 코드를 짜면 된다. | ||
| - | |||
| - | 여러 개의 표본을 균일한 가중치로 뽑고 싶으면 | ||
| - | < | ||
| - | using StatsBase | ||
| - | x = 1:10 | ||
| - | sample(x,n) | ||
| - | </ | ||
| - | 으로 n에 원하는 숫자를 넣으면 된다. | ||
| - | |||
| - | 비균일 가중치로 여러개를 뽑고 싶다면 | ||
| - | < | ||
| - | using StatsBase | ||
| - | |||
| - | x = 1:10; | ||
| - | weights = rand(10); # [0, 1) 의 범위에서 난수 10개 생성 후 1차원 배열로 만듦 | ||
| - | sample(x, Weights(weights), | ||
| - | </ | ||
| - | |||
| - | 을 하면 된다. | ||
| - | |||
| - | 마지막으로 비복원 추출을 원하면 | ||
| - | < | ||
| - | using StatsBase | ||
| - | |||
| - | x = 1:10; | ||
| - | weights = rand(10); # [0, 1) 의 범위에서 난수 10개 생성 후 1차원 배열로 만듦 | ||
| - | sample(x, replace = false) | ||
| - | </ | ||
| - | 이렇게 replace = false 를 넣어주면 된다. | ||