## 배열 생성 및 초기화
난수를 데이터로 가지는 배열을 생성
- np.random.normal()
- np.random.rand()
- np.random.randn()
- np.random.randint()
- np.randoml.random()
### np.random.normal(loc=0.0,scale=1.0,size=None)
- 정규 분포 확률 밀도에서 표본을 추출하여 데이터로 가지는 배열 생성
- loc: 정규분포의 평균, 기본값=0.0
- scale: 정규분포의 표준편차, 기본값=1.0
- size:(행,열,차원)배열 구조, 기본값=single value(배열이 아닌 하나의 값을 반환)
random이기 때문에 실행 때 마다 값이 달라진다는 것에 유의하자!
data= np.random.normal(10,2,10000)코드를 작성하여 10000개의 10행 2열의 array를 만들었다. 이를 히스토그램으로 시각화 시킨다. 이 때 import matplotlib.pyplot as plt 를 잊지말고 해야한다.
위와 같이 정규분포 형태가 나온다. bins = 1000을 쓰지 않으면 흔히 아는 막대그래프 모양으로 나타나지기 때문에 정규분포 그래프를 선명히 나타내기 위해서 bins = 1000 option을 주었다.
bins에 대한 설명은 다음과 같다
bins : int or sequence or str, optional
If an integer is given, bins + 1 bin edges are calculated and returned, consistent with numpy.histogram.
If bins is a sequence, gives bin edges, including left edge of first bin and right edge of last bin. In this case, bins is returned unmodified.
All but the last (righthand-most) bin is half-open. In other words, if bins is:
[1, 2, 3, 4]
then the first bin is [1, 2) (including 1, but excluding 2) and the second [2, 3). The last bin, however, is [3, 4], which includes 4.
Unequally spaced bins are supported if bins is a sequence.
With Numpy 1.11 or newer, you can alternatively provide a string describing a binning strategy, such as 'auto', 'sturges', 'fd', 'doane', 'scott', 'rice' or 'sqrt', see numpy.histogram.
The default is taken from rcParams["hist.bins"] = 10.
출처 : https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.pyplot.hist.html
### np.random.rand(d0,d1...dn)
- 지정한 shape 에 따라 배열을 생성한 후 난수로 초기화
- 사용되는 난수는 0이상 1미만의 범위에서 균등 분포로 추출
이 또한 10000개의 데이터로 균등분포임을 보이겠다.
### np.random.randn(d0,d1,d2...dn)
- 지정한 shape에 따라 배열을 생성한 후 난수로 초기화
- 난수는 표준정규분포에서 추출된 데이터
자세한 코드는 github.com/winston1214/baseline_ML -> Star와 팔로우 눌러주시면 감사하겠습니다.
'Python > python 기초' 카테고리의 다른 글
Numpy - 5 (0) | 2020.01.22 |
---|---|
Numpy array - 4 (0) | 2020.01.07 |
Numpy array -2 (0) | 2020.01.07 |
Numpy array - 1 (0) | 2020.01.06 |
Formatting (0) | 2020.01.05 |
댓글