묭동이 개발 블로그
  • [Python] Numpy 라이브러리
    2024년 01월 02일 18시 25분 30초에 업로드 된 글입니다.
    작성자: 묭동이

    데이터 분석을 위한 파이썬 철저 입문 교재를 참고하여 작성하였습니다

    Numpy 라이브러리?

    • Python을 이용한 과학 연산을 쉽고 빠르게 할 수 있도록 지원하는 패키지
    • 라이브러리는 "import 라이브러리명"을 통해 사용할 수 있다 
      • 코드 상단에 import numpy as np 실행
        • import ... as ... 문은 모듈을 별칭으로 가져오기 위해 사용하며 'numpy' 라이브러리의 함수에 접근할 때마다 전체 이름 'numpy'를 사용하는 대신 'np'를 사용하여 코드를 간결하고 쉽게 작성하는데 도움을 준다
          • Ex) numpy.array() -> np.array()
    • 공식 홈페이지 : https://www.numpy.org

    시퀀스 데이터(튜플, 리스트)로부터 배열 생성

    • arr_obj = np.array(seq_data)
    • 시퀀스 데이터로 튜플리스트를 모두 사용할 수 있지만 주로 리스트 타입의 데이터를 사용한다 데이터를 다루는데 더욱 효과적인 타입이라 그런것 같다
    • 코드 설명
      • 1) 코드 상단에 numpy 라이브러리를 불러온다
      • 2) 정수 데이터만 들어있는 리스트 변수 data1을 생성한다
      • 3) numpy 라이브러리의 array 메소드를 사용하여 numpy 배열(array)을 만든다

    출력 결과 numpy array가 잘 생성된 것을 확인할 수 있다

    • 정수와 실수가 섞여 있는 리스트 데이터 역시 numpy 배열로 만들 수 있다

    출력 결과에서 이상함을 느낄 수 있다 "분명 정수 데이터를 넣었는데 왜 실수 타입으로 나오지?"

    이는 numpy에서 인자로 정수와 실수가 혼합되어 있을 때 모두 실수로 변환하기 때문이다

    정수로 변환하고 싶을 때는 dtype = int를 통해 가능하지만 소수점 아래 데이터를 잃게 되므로 주의해야 한다

    dtype = int를 통해 정수로 변환

     

    numpy에서는 1차원 배열뿐만 아니라 다차원 배열도 지원한다 아래 예제는 numpy array 메소드를 사용하여 만든 2차원 배열이다

    3 x 3 행렬(2차원 배열) 생성

    위 코드처럼 numpy array 메소드의 인자로 리스트를 바로 입력하여 array로 만들 수도 있다

     

    범위를 지정하여 배열 생성

    • arange() 메소드를 사용하여 start부터 stop 전까지 step 만큼 더한 배열(수열)을 생성할 수 있다
    • arr_obj = np.arange([start], stop[, step])
      • step이 1인 경우 생략이 가능하여 numpy.arange(start, stop)처럼 사용할 수 있다
      • 또한, start가 0인 경우에도 생략이 가능하여 numpy.arange(stop)처럼 사용할 수 있다

    start = 2, stop = 20, step = 2
    step이 1인경우 생략 가능
    start = 0, step = 1인 경우 start와 step 모두 생략 가능

     

     

    아래 링크는 학교 수업에서 배운 numpy 라이브러리를 정리(두서없이...)한 내용입니다

    도움이 되셨으면 좋겠습니다 :)

    https://vamos00.notion.site/5-numpy-a6e70ef066bc427995a79361f8046eef?pvs=4

     

    5주차 - numpy | Built with Notion

    1. Numpy의 소개

    vamos00.notion.site

     

    틀린 부분 댓글로 작성해주시면 감사하겠습니다 😊

     

     

    댓글