데이터분석_Numpy

Kwaaaaan·2023년 11월 1일
1

데이터분석

목록 보기
3/3
																											## Numpy란?

다차원 배열인 행렬을 효율적으로 사용할 수 있도록 지원하는 파이썬의 라이브러리입니다!
수치해석 및 통계관련 기능을 구현하기 위해 가장 기본이 되는 모듈입니다.

행렬에 대한 설명은 따로 하지 않겠습니다..!

Numpy 설치

Numpy 사용하기

Python List vs Numpy array(ndarray)

1. 선언 형태의 차이

    1. [List]

      원소로 여러 가지 자료형을 허용한다.

    1. [Ndarray]

      원소로 한 가지 자료형만 허용한다.

    1. [List]

      내부 배열의 원소 개수가 달라도 된다.

    1. [Ndarray]

      내부 배열의 원소 개수가 같아야 한다.

2. 연산의 차이


Numpy 관련 속성 및 메소드(ndim, shape)

  1. ndim: 배열의 차원수 반환
  2. shape: 배열 각 차원의 크기를 튜플 형태로 표현

dot

np.dot(array1, array2) : 배열의 내적 연산
• array1과 array2가 모두 0차원 이면, 두 스칼라의 곱 연산
하지만, 이경우엔 보통 * 연산자를 쓰겠죠?
• array1과 array2가 모두 1차원 이면, 두 벡터의 내적 연산
• array1과 array2가 모두 2차원 이면, 두 행렬의 행렬곱 연산
하지만, 행렬곱 연산의 경우, matmul() 사용을 권장!

matmul

np.matmul(array1, array2) : 행렬의 행렬곱 연산
주의 ! A X B 연산을 진행할 때, A의 열의 개수와 B의 행의 개수가 동일해야 한다!

zeros, ones, full, eye

  1. zeros: 영행렬 생성
    python print(np.zeros((2, 2))) -> output: [[0. 0][0. 0]]

  2. ones: 일행렬([[1.1.1.][1.1.1]]) 생성
    python print(np.ones((2, 3))) -> output: [[1.1.1][1.1.1]]

  3. full: np.full((m, n), k): m x n 크기의 모든 원소가 k인 행렬 생성
    python print(np.full((2,3),5) -> output: [[5.5.5][5.5.5]]

  4. np.eye(n): n x n 크기의 단위행렬 생성
    python print(np.eye(3)) -> output: [[1.0.0][0.1.0][0.0.1]]

flatten, reshape, arrange, random, 조건식

  1. flatten(): 행렬의 평탄화 작업 -> N차원 배열을 1차원 배열로 변환시켜줌

    python ndarr = np.array([[6,3], [5,2], [4,1]])
    python ndarr.flatten() -> output: array([6, 3, 5, 2, 4, 1])

  2. reshape(): 배열차원 변경

    python(ndarr, shape)
    pythonndarr.reshape(2, 3) -> output: array([[6, 3, 5], [2, 4, 1]])
    주의! 기존 원소의 개수와 변경될 차원에서의 원소개수가 같아야 함!

  3. arrange(): 특정 배열 생성

    python print(np.arrange(5)) print(np.arrange(5, 10)) print(np.arrange(5, 10, 2)) -> output: [0 1 2 3 4][5 6 7 8 9] [5 7 9]

  4. random: 난수로 배열 채울때 사용!

  5. 조건식


자료출처: 코딩온(conding on)

profile
스마트팩토리 개발자(를 꿈꾸며)

0개의 댓글