본문 바로가기

1. Python

[Python study] numpy np 패키지

728x90
반응형

안녕하세요 주말에 놀러갔다와서 아직도 머리가 아픈 저녁이네요ㅠ 오늘은 지난시간에 설치한 주피터노트북을 이용한 데이터분석 기본툴인 numpy 패키지에 관해 알아보도록 하겠습니다!

아나콘다를 통한 주피터 노트북을 설치하는 방법은 아래의 링크를 참고해주세요😊

2023.02.25 - [1. Python] - [Python study] 파이썬 데이터 분석 툴 아나콘다 주피터 노트북 설치 및 사용 하기

 

[Python study] 파이썬 데이터 분석 툴 아나콘다 주피터 노트북 설치 및 사용 하기

안녕하세요 오늘은 불금이네요 불금인데 하지만 갓생을 살기 위해서 오늘도 파이썬 공부를 해보려구합니다😉 파이썬은 프로그래밍, 업무자동화, 데이터 분석 등에 이용되는데 그 중에서도 회

bobby1001.tistory.com

 

1. numpy 패키지란?

 

numeric + python의 약어로 말그대로 숫자파이썬 패키지로 수학과 과학을 연산하기 위한 패키지입니다!

파이썬의 내장함수는 합계(sum), 최대(max), 최소(min) 정도만 분석 할 수 있는 한계가 있기때문에 만든 패키지라고 볼 수 있습니다!

 

2. numpy 패키지 사용법

 

패키지 사용은 우선 앞에서 공부 했던 내용을 바탕으로 불러오기를 먼저 해줘야합니다!

 

import numpy as np

 

패키지 불러오는 방법은 두 가지만 기억하시면 됩니다.😋

 

첫번째 방법 from ~ import ~ as ~ 방식입니다. 

패키지로부터(from) 특정 모듈을 들여오고 (import) 약어로 어떻게 이용하겠다.(as) 

두번째 방법 import ~ as ~ 방식입니다.

패키지를 들여오고(import) 약어로 어떻게 이용하겠다(as)

" 두번째 방식처럼 from 없이 import 패키지를 바로 하면 되지 않곘냐 " 라는 의문을 가질 수 도 있으실텐데요, 특정패키지는 무수히 많은 모듈을 포함하고있고 한번에 그 많은 모듈들이 들어있는 패키지를 불러오게되면 속도가 떨어지기 때문에 필요한 모듈만 불러올 때는 첫번째방식을 이용합니다!

 

as 는 생략 가능한데 편의상 쓰시는 거라고 보시면 됩니다.😉

위에서 보시는 것처럼 numpy 패키지를 바로 import 하고 사용하게 되면 numpy.함수() 방식으로 사용해야하나, as np라는 약어를 주게 되면 np.함수() 방식으로 단순화 시킬 수 있습니다.

numpy 함수는 관례상 np 라고 작성합니다!

 

3. numpy 패키지 함수

 

그렇다면 패키지를 쓰는 이유가 있어야곘죠!

numpy 패키지에 들어있는 유용한 함수 몇가지를 소개해드리도록 하겠습니다.

 

1) 리스트 평균 계산

 

np.mean(list)

 

파이썬 기본 내장 함수를 통해서 List에 평균은 구할 수 있는 방법은 List 에 모든 원소들을 더하고 List 원소 개수로 나누는 방법이 있었습니다.

이러한 불편한점을 개선하고자 numpy 에서는 평균을 구하는 함수를 지원합니다!

2) 등간격으로 숫자 생성

 

 np.linspace(A,B,C)

 

등간격으로 숫자를 생성하는 방법이 있는데요, 위식에서 간단히 나타내면

A부터 B까지 숫자를 C 개수의 간격으로 출력 해줍니다.

아래의 예시를 보시면 3부터 10까지 숫자를 5개의 간격으로 나누어서 출력 해주는것을 확인 하실 수 있습니다.

쓰일 일이 있을 것 같은데 추후 데이터 분석 시 다뤄보도록 하겠습니다.😕  

여기서 array 라는 처음 보는 방식에 데이터 구조가 나왔는데요.

list 자료구조와 거의 동일한데 무수한 데이터에서 특정 데이터를 검색 할 때 , list 대비 검색 속도가 빠르다는 장점이 있다고하네요!

 

3) 1차원 데이터간 연산

 

1차원 데이터인 list 끼리 각각 매칭해서 연산을 하고싶은데, 그냥 덧셈을 하면 그냥 리스트 내부에 데이터가 추가 되는 형태로 밖에 구현이 안되는데요.

np.array 함수를 이용하면 간단히 해결 할 수 있습니다!

 

 

4) 2차원 구조 생성

 

np.array( [ [a,b], [c,d] ] )

 

numpy 패키지는 2차원 구조인 행열을 생성 할 수 있습니다.

x 변수에 대괄호 두개를 이용하여 데이터를 저장하고 x로 출력을 한번 하고, np.array 함수를 이용해서도 출력을 해보앗습니다.

시각적으로도 보이는 거와 같이 바로 출력을 했을때는 list 내부에 list가 있는 이중 list가 출력이 되는 것을 확인 하실 수 있고 array 함수를 사용했을때는 대괄호간 쉼표가 구분자가 되어 행열을 나타내는 것을 볼 수있습니다.😮

 

y 변수에도 동일한 2 x 2 행열을 생성하고 더해보면 확연하게 차이가 나는 것을 보실 수 있어요!

 

그냥 x +y 를 출력하면 list 끼리 합쳐지는 것을 볼 수 있으나, array의 경우는 각각 1대 1로 매칭해서 실제로 연산을 하는 것을 볼 수있습니다.

 

5) 결측치 생성

 

np.nan

데이터 분석을 할 때 분석 오류가 나는 경우를 생각해보면 이상치 데이터가 값에 포함되어있는 경우들이 많습니다.

결측치 생성은 이러한 데이터들을 처리 할 때 유용한 우회 툴이 될 수 있습니다.

 

예를 들어 절대로 음수가 나올 수 없는 항목인데 데이터 리딩이 잘 못 되어 음수가 나오는 경우들이 있다고 가정 해봅시다. 이럴 경우 음수 데이터들을 모두 결측치로 처리하고 분석을 하거나, 결측치로 한번 처리된 것을 다시 한번 모두 0으로 처리하여 분석을 하거나 할때 유용하게 사용 할 수 있습니다.

 

4. 마치며

 

오늘은 데이터 분석시 필수적으로 사용되는 패키지 중 하나인 numpy 패키지에 관해 알아봤는데요, 사실 numpy 패키지는 또 다른 필수 패키지인 pandas 패키지와 조합하여 주로 사용됩니다.😥

그렇다보니 numpy 패키지에 있는 함수를 간단히만 소개드렸는데요.

이후 pandas패키지와 같이 데이터 분석을 진행 할 때 numpy 패키지가 사용되는 경우 numpy의 다른 함수들도 소개하면서 넘어 가도록하겠습니다!

오늘 하루도 고생하셨고 긴글 읽어주셔서 감사합니다.😊

 

728x90
반응형