본문 바로가기

머신러닝 공부

판다스(Pandas)와 기본 API (1)

SMALL

판다스는 파이썬에서 데이터 처리를 위해 존재하는 가장 인기있는 라이브러리입니다.

일반적으로 정형 데이터는 대부분 2차원 데이터입니다. 즉, Row(행),Column(열)로 구성되어 있습니다.

(판다스는 정형데이터이기 때문에 3차원은 호환하지 않습니다.)

 

행과 열의 2차원 데이터가 인기있는 이유는 사람이 가장 이해하기 쉬운 데이터 구조이면서도 효과적으로 데이터를 담을 수 있는 구조입니다. 판다스는 이처럼 행과 열로 이뤄진 2차원 데이터를 효율적으로 가공/처리할 수 있는 다양하고 훌륭한 기능을 제공합니다.

 

(판다스에서는 시계열성이 많다는 것입니다. 판다스는 시계열성 구성하는 것을 되게 쉽게 구현하게 되어있습니다.

그 외에도 집계성, 시각화와 효율적인 연계, 빠른 데이터처리 등과 같은 장점들을 numpy를 기반으로 하기 때문에 가능합니다. numpy가 호락호락한 api가 아니지만 판다스는 high level user friendly하게 데이터 분석을 할 수 있도록 잘 만들어놓은 라이브러리 입니다.)

 

 

판다스의 주요 구성 요소 - DataFrame, Series, Index

 

DataFrame은 Column과 Row로 구성된 2차원 데이터 세트입니다.

이와 다르게 1차원 데이터 세트일 경우에는 Series라고 말합니다. (1차원이므로 Column 이름이 따로 존재하지는 않는다)

앞서 넘파이에서 본 shape에서 shape(3,)이라면 1차원입니다. 하지만 shape(3, 1)와 같이 column이 명확하게 1개가 있다고 지정할 경우에는 dataframe이 되는 것입니다.

그리고 Index는 DataFrame/Series의 고유한 Key값 객체입니다.

 

 

 

기본 API

 

  • read_csv()
  • head()
  • shape
  • info()
  • describe()
  • value_counts()
  • sort_values()

위 API는 jupyter notebook을 이용해서 실습을 하며 공부해보도록 하겠습니다.

kaggle titanic dataset을 이용할 것이기 때문에 kaggle에 가입이 되어 있다면 Data로 들어와

이처럼 train.csv를 다운받아줍니다. 이때 다운로드 위치는 사용자안에 있는 실습 코드 내부에 저장합니다.

저는 이때 이름을 titanic_train으로 변환하여 진행했습니다.

이때 read_csv()에서 내부 인자를 'titanic_train.csv'라고 넣어준다면, 아무런 절대경로 디렉토리를 넣지 않아도 현재 수행되고 있는 자기 디렉토리 안에서 titanic_train.csv 를 찾습니다.

실제 titanic_train.csv를 EditPlus를 통해서 열어보면 다음과 같습니다.

1번째 줄에 header가 있고, 그 header들에서 컴마(,)를 통해서 column을 구분하고 있습니다.

따라서 처음 import를 시켜 pandas 를 pd로 alias시킨 후에, titanic_df = pd.read_csv('titanic_train.csv')를 입력하게 된다면

앞선 본 화면의 csv를 읽어들여서 titanic_df라는 이름의 dataframe으로 저장시켜줍니다.

이후 titanic_df (혹은 display(titanic_df) )라는 명령어를 주게 되면 DataFrame의 포맷형태로 출력결과가 나오게됩니다.

 

특정값의 dataframe만 읽어들이고 싶다면 titanic_df.head(3)과 같이 짜줄 수 있습니다.

LIST

'머신러닝 공부' 카테고리의 다른 글

Pandas(판다스) - value_counts method  (0) 2023.02.03
판다스(pandas) - 기본 API (2)  (0) 2023.02.03
numpy ndarray의 sort & argsort  (0) 2023.02.01
numpy(3)  (0) 2023.02.01
numpy(2)  (0) 2023.02.01