ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 4일차(115 ~ 134)
    책/파이썬 라이브러리를 활용한 데이터 분석 2019. 3. 25. 00:35
    반응형

    3장은 그냥 읽고 넘어가는 부분인 것 같아서 읽고 넘겼습니다.


    4장 Numpy 기본: 배열과 벡터 계산 입니다.


    -------------------------------------------------------------------------------------------------------------------------------------------------------


    randn 이라는 명령어가 나옵니다. 괄호안에 들어있는 것은 (차원,차원에 들어가는 값들의 개수) 순으로 값을 입력하네요.

    randn은 가우시안 표준 정규 분포 값을 균일하게 생성한다는 명령어인데 가우시안(가우스) 표준 정규 분포 값이란 말은 평균 0, 표준 편차 1이라는 말이네요.

    https://namu.wiki/w/%EC%A0%95%EA%B7%9C%20%EB%B6%84%ED%8F%AC

    여기에 1.1.그래프의 첫 번째 그림의 빨간색 그래프가 평균0, 표준편차 1입니다. 대충 저런 범위에서 랜덤의 수가 나온다고 합니다.


    이참에 np.random 모듈에서 랜덤한 수를 뽑아내는 명령어들을 전부 알아봅시다.

    np.random.randn은 위에 설명하였습니다.

    np.random.rand은 0부터 1사이의 난수를 생성한다고 합니다.

    np.random.randint(X,Y)는 X이상 Y미만의 랜덤한 정수 숫자를 하나 생성한다고 합니다.

    np.random.seed는 시드를 통한 난수를 생성한다고 합니다.



    shape, dtype라는 명령어가 나옵니다.

    shape는 차원의 크기를 알려주는 명령어라고 합니다.




    dtype는 튜플, 배열에 저장된 자료형을 알려주는 명령어라고 합니다.




    ndim은 차원의 상태를 출력하는 명령어라고 합니다.

    만약 Data = array([[1,2], [3,4]]) 라는 배열이 있다면 2차원 배열이니 2를 출력하게 됩니다.



    zeros, ones라는 명령어는 각각 0과 1로 채운 배열을 생성한다고 합니다.

    zeros_like, ones_like는 주어진 배열 크기의 값을 각각 0,1로 초기화 시킨다고 합니다. 아래 사진처럼요.




    empty는 초기화되지 않은 배열을 생성한다고 합니다.

    C언어에서 int a=0;이 아닌 int a;로 하면 a는 초기화되지 않은 값으로 정해지는데 그것과 비슷한 것 같습니다.

    zeos,ones와 마찬가지로 empty_like 명령어가 있습니다.



    arange(X)는 파이썬의 np.array(list(i for i in range(X)))와 같은 명령어라고 합니다.


    eyeidentity는 같은 명령어로 N x N 단위 행렬을 생성합니다.



    참고로 122쪽에 np.string_을 따로 명시하지 않으면 형식이 유니코드로 되나 봅니다.



    ------------------------------------------------------------------------------------------------------------------------------------------------------


    132쪽 입니다.



    reshape는 배열의 크기 변형 명령어 입니다.

    reshape 안에 -1도 넣을 수 있습니다. -1은 알아서 거기에 맞게 넣으라는 의미라고 하네요.

    맨 아래처럼 나누어 떨어지지 못하는 숫자를 넣으면 오류가 나옵니다.



    ix_ 라는 명령어는 특정 순서로 행과 열을 팬시색인하는 방법입니다.

    책에 나온 내용은 아래 사진과 같이 작동합니다.

    더 자세한 내용은 https://rfriend.tistory.com/tag/np.ix_%20function 여기에 나와 있습니다.

    이 분 글을 너무 잘쓰십니다. 위 사이트를 주로 이용할 수 밖에 없네요.





    T 라는 명령어는 형태를 반대로 바꿔주는 명령어라고 합니다.

    만약 아래 사진과 같이 8,4 형태에 T를 입력하면 D의 형태가 4,8로 바뀌고

    마찬가지로 2,3,4,5 인 형태가 있으면 5,4,3,2로 바뀝니다. 이 경우엔 출력 크기가 커서 사진은 올리지 않겠습니다.



    dot는 행렬의 내적을 구하는 명령어라고 하네요.


    transpose는 튜플로 축 번호를 받아서 치환하고 변경한다고 합니다. 책에서는 어떻게 바뀌는지 알려주지 않기 때문에

    https://rfriend.tistory.com/289 여기에서 transpose만 보시고 대충 어떤식으로 바뀌는지 알면 될 것 같습니다.



    swapaxes는 T와 비슷하지만 n개의 축 번호를 받아서 배열을 뒤 바꾸는 명령어라고 합니다.

    위와 같은 배열이 있다고 합시다.

    축 번호는 0,1,2 이고, 각각 reshape안의 인자 2,3,4에 대응합니다.

    만약 swapaxes(0,2)를 입력하면 D의 형태가 4,3,2로 바뀌게 됩니다.




    ===================================================================================


    나머지 4장은 내일 이어서 하겠습니다.




    반응형

    ' > 파이썬 라이브러리를 활용한 데이터 분석' 카테고리의 다른 글

    6일차(157 ~ 192)  (0) 2019.03.26
    5일차(135 ~ 155)  (0) 2019.03.25
    3-2일차(55 ~ 70)  (0) 2019.03.23
    3-1일차(47 ~ 54)  (0) 2019.03.22
    2일차(44 ~ 47)  (0) 2019.03.21

    댓글

Designed by Tistory.