NumPy에서 제공하는 random 모듈의 randint, rand, randn 함수는 각각 다음과 같은 차이점이 있습니다.
randint(low, high=None, size=None, dtype=int) 함수
주어진 범위 내에서 정수를 랜덤하게 생성합니다.
low: 랜덤한 정수의 최소값입니다. 이 값은 범위에 포함됩니다.
high: 랜덤한 정수의 최대값입니다. 이 값은 범위에 포함되지 않습니다. 따라서, high 값은 설정하지 않으면 0에서 low 사이의 정수를 생성합니다.
size: 생성할 배열의 크기를 지정합니다.
dtype: 생성할 배열의 자료형을 지정합니다.
rand(d0, d1, ..., dn) 함수
주어진 shape에 따라 0과 1 사이의 난수를 생성합니다.
d0, d1, ..., dn: 생성할 배열의 차원을 지정합니다.
randn(d0, d1, ..., dn) 함수
주어진 shape에 따라 표준 정규 분포(평균=0, 표준편차=1)에서 랜덤한 값을 생성합니다.
d0, d1, ..., dn: 생성할 배열의 차원을 지정합니다.
따라서, randint 함수는 정수형 데이터를 랜덤하게 생성하고, rand 함수는 실수형 데이터를 0과 1 사이에서 랜덤하게 생성하며, randn 함수는 실수형 데이터를 표준 정규 분포에서 랜덤하게 생성합니다.
NumPy의 random.randint() 함수를 사용하여 -50에서 50까지의 정수 중에서 0.1을 곱한 값으로 100개의 랜덤한 실수를 생성하고, 그 결과를 10으로 나누어서 -5에서 5까지의 구간에서 랜덤하게 정수 100개를 선택할 수 있습니다.
다음은 해당 코드입니다.
python
Copy code
import numpy as np
rand_floats = np.random.randint(-50, 51, size=100) * 0.1
rand_ints = (rand_floats - (-5)) * 10
print(rand_ints)
위 코드를 실행하면 -5에서 5까지 0.1 간격으로 랜덤하게 선택된 정수 100개가 출력됩니다.
NumPy의 random.randint() 함수를 사용하여 -50에서 50까지의 정수 중에서 0.1을 곱한 값으로 100개의 랜덤한 실수를 생성하고, 그 결과를 10으로 나누어서 -5에서 5까지의 구간에서 랜덤하게 정수 100개를 선택할 수 있습니다.
다음은 해당 코드입니다.
python
Copy code
import numpy as np
rand_ints = np.random.randint(-50, 51, size=100)
rand_floats = (rand_ints * 0.1) + 0.5
print(rand_floats)
위 코드를 실행하면 -5에서 5까지 0.1 간격으로 랜덤하게 선택된 실수 100개가 출력됩니다.
import numpy as np
rand_ints = np.random.randint(-50, 51, size=100)
rand_floats = (rand_ints * 0.1) + 0.5
print(rand_floats)
코드를 입력하세요import numpy as np
rand_ints = np.random.randint(-50, 51, size=100)
rand_floats = (rand_ints * 0.1) + 0.5
print(rand_floats)
import numpy as np
rand_ints = np.random.randint(-50, 51, size=100)
rand_floats = (rand_ints * 0.1) + 0.5
print(rand_floats)