유용링크들
random 관련
0이상 20미만의 int 10개 배열 만들기
> a = np.random.randint(20, size=10)
array([17, 12, 4, 18, 11, 15, 5, 19, 19, 18])
5행3열의 array를 만들고 그 값들을 5~10 사이의 랜덤한 숫자로 채우고 싶을때
np.random.uniform(5, 10, size=(5,3))
#> [[ 8.50061025 9.10531502 6.85867783]
#> [ 9.76262069 9.87717411 7.13466701]
#> [ 7.48966403 8.33409158 6.16808631]
#> [ 7.75010551 9.94535696 5.27373226]
#> [ 8.0850361 5.56165518 7.31244004]]
위를 소수점 3째자리 까지만 나오도록 하고 싶으면
> np.set_printoptions(precision=3) 하면됨(글로벌 적용이라 그 이후에 출력하는데는 다 공통적으로 적용됨)
e-04와 같은 scientific notation을 제거하고 싶으면?
> np.set_printoptions(suppress=True) 하면 된다.
array관련
> np.arange(10) 하면 array([0,1,2,3,4,5,6,7,8,9]) 가 만들어 진다.
> arr = np.arange(10) 한다음
> arr[arr%2 == 1] 하면 array([1,3,5,7,9])가 리턴된다. (조건문을 인덱스 부분에 넣을 수 있다는 것. 그냥 python list로는 안되는 부분)
> arr[arr%2 == 1] = -1 하면 arrary([0,-1,2,-1,4,-1,6,-1,8,-1]) 이 만들어진다. 조건문으로 인덱스 조회가 되는것 뿐 아니라 assign과 연결시킬수도 있다.
> arr *= -1 하면 array([0,-1,-2,-3,-4,-5,-6,-7,-8,-9])가 만들어진다. (element에 대한 연산을 저런식으로 할 수 있다는것.. python list로는 다른 의미가 되어버리니 주의할 것)
np.where 사용하기
> a = np.array([1,2,3,2,3,4,3,4,5,6])
> b = np.array([7,2,10,2,7,4,9,4,9,8])
값이 같은 인덱스만 추리고 싶으면?
> np.where(a == b) 하면된다.
> array([1,3,5,7])이 리턴된다.
'Programming > Python' 카테고리의 다른 글
pudb (0) | 2018.11.15 |
---|---|
Anaconda & Jupyter (0) | 2018.03.23 |
python virtualenv 가상환경 (0) | 2017.11.16 |
python에서 doxygen 사용해보기 (0) | 2017.11.14 |
python import (0) | 2017.11.14 |