랜덤 데이터 분포


데이터 배포란 무엇입니까?

데이터 분포는 가능한 모든 값의 목록과 각 값이 발생하는 빈도입니다.

이러한 목록은 통계 및 데이터 과학을 다룰 때 중요합니다.

random 모듈은 무작위로 생성된 데이터 분포를 반환하는 메서드를 제공합니다.


랜덤 분포

임의 분포는 특정 확률 밀도 함수 를 따르는 난수의 집합입니다 .

확률 밀도 함수: 연속 확률을 설명하는 함수. 즉, 배열에 있는 모든 값의 확률입니다.

모듈 의 choice()방법을 사용하여 정의된 확률을 기반으로 난수를 생성할 수 있습니다 .random

choice()방법을 사용하면 각 값에 대한 확률을 지정할 수 있습니다.

확률은 0과 1 사이의 숫자로 설정되며, 여기서 0은 값이 발생하지 않음을 의미하고 1은 값이 항상 발생함을 의미합니다.

예시

100개의 값을 포함하는 1차원 배열을 생성합니다. 여기서 각 값은 3, 5, 7 또는 9여야 합니다.

값이 3일 확률은 0.1로 설정됩니다.

값이 5일 확률은 0.3으로 설정됩니다.

값이 7일 확률은 0.6으로 설정됩니다.

값이 9일 확률은 0으로 설정됩니다.

from numpy import random

x = random.choice([3, 5, 7, 9], p=[0.1, 0.3, 0.6, 0.0], size=(100))

print(x)

모든 확률 숫자의 합은 1이어야 합니다.

위의 예제를 100번 실행해도 값 9는 절대 발생하지 않습니다.

매개변수 에 모양을 지정하여 모든 모양과 크기의 배열을 반환할 수 있습니다 size.

예시

위와 같은 예제이지만 각각 5개의 값을 포함하는 3개의 행이 있는 2차원 배열을 반환합니다.

from numpy import random

x = random.choice([3, 5, 7, 9], p=[0.1, 0.3, 0.6, 0.0], size=(3, 5))

print(x)