사용자 정의 분포를 사용하여 난수 생성
프로그래밍 영역에서 난수 생성은 기본적인 작업입니다. 생일을 시뮬레이션하는 경우와 같이 표준 무작위 모듈의 분포가 부족한 시나리오의 경우 사용자 정의 분포를 준수하는 숫자를 생성해야 합니다.
사용자 지정 분포를 위한 기존 모듈
다행히도 Python의 풍부한 라이브러리 생태계는 이 문제에 대한 해결책을 제공합니다. 그러한 모듈 중 하나는 scipy.stats.rv_discrete입니다. 이를 통해 다양한 값에 대한 확률을 지정하고 그에 따라 난수를 생성할 수 있습니다. rv_discrete의 값 매개변수는 가능한 값에 해당하는 확률 목록을 취합니다.
scipy.stats.rv_discrete 사용 예시
rv_discrete의 사용을 설명하려면 다음을 고려하세요. 다음 예:
import scipy.stats as stats # Define the probabilities probabilities = [0.1, 0.05, 0.05, 0.2, 0.4, 0.2] # Create the discrete distribution dist = stats.rv_discrete(values=(range(1, 7), probabilities)) # Generate random numbers random_numbers = dist.rvs(size=10)
추가 옵션
scipy.stats.rv_discrete 외에도 Python의 numpy.random.choice()는 대체 접근 방식을 제공합니다. p 키워드 매개변수를 사용하여 확률을 지정하면 사용자가 사용자 정의 분포를 기반으로 난수를 생성할 수 있습니다.
Python 3.6 이상: random.choices()
Python 3.6 이상을 사용하는 경우, Random 모듈에는 사용자 정의 분포로 난수 생성 프로세스를 단순화하는 random.choices() 함수가 포함되어 있습니다.
결론
scipy.stats.rv_discrete, numpy.random.choice() 또는 random.choices() 중 무엇을 선택하든 Python은 사용자 정의 분포를 준수하는 난수를 생성하기 위한 포괄적인 도구 세트를 제공합니다. 통계 문제를 효과적으로 해결합니다.
위 내용은 Python에서 사용자 정의 분포를 사용하여 난수를 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!