728x90

1. 🐼Pandas란?

2. 다운로드 방법

  • Anaconda distribution
  • Pandas를 다운로드 받는 가장 쉬운 방법은 Anaconda distribution을 다운받는 것이다.
    아나콘다 디스트리뷰션을 이용하면 따로 pandas를 따로 다운 받을 필요 없이 SciPy stack을 모두 다운 받을 수 있다.
  • Miniconda 3.
  • 특정 패키지만을 다운받고 싶다면 miniconda도 추천한다. Conda라는 패키지 매니저를 통해 다운받아야 하는데 miniconda를 다운받고 실행하면 된다.
  • Jupyter notebook 참고 문헌
  • //일반적인 경우 !pip3 install pandas //permission 에러의 경우 !pip3 install pandas --user
  • 노트북에 jupyter notebook을 다운 받으면 된다. 후에 pandas를 import할때 오류가 난다면 아래의
    코드를 입력하면 해결이 된다

3. Pandas의 특징

  • Pandas는
    1. 서로 다른 타입의 열들로 이뤄진 표로 나타낸 데이터(tabular data)
    2. 정렬 혹은 정렬되지 않은 시계열 데이터(일정 시간에 대해 시간의 함수로 표현되는 데이터)
      (time-series data)
    3. 행 과 열을 가진 임의의 행렬 데이터
    4. 관찰, 수치 데이터 세트(분류될 필요가 없다)

위와 같은 데이터를 처리하는데 특화 되어있다.

  • pandas의 모든 자료구조는 value-mutable(값이 변할 수 있다)하다.

4. Pandas 이용하는 법

  • pandas 패키지를 load 하려면 패키지를 import 해야한다.
    pandas 의 alias 는 pd 이다. 따라서 아래의 코드와 같이 pandas를 import하면 된다.
import pandas as pd

Untitled

5. Pandas 실습

1) Pandas의 자료형

  • 각 DataFramed 의 행(Column, 세로 줄)은 Series이다
  • 하나의 행을 선택하는 것은 파이썬에서 Dictionary 값을 key로 선택 하는 것과 유사하다
  • Pandas Series는 DataFrame중의 하나의 행으로 이루어져 있기 때문에 행 값이 없다.
  • DataFrame, Series는 method를 활용해 다양한 기능을 구현할 수 있다.
    다만 parentheses( )를 꼭 붙여야 한다.
  • 다양한 method가 있다
    1. max() : 최대 값을 반환한다.
    2. describe(): DataFrame의 수치데이터에 대한 간략한 개요를 보여준다.

2) Tabular data를 읽고 쓰는 방법

  • Pandas 는 read_csv() 함수를 지원해서 css file 을 pandas DataFrame 으로 변환해준다.
    read_파일형식 을 활용하면 csv, excel, sql, json, parquet 등의 파일을 열 수 있다.
titanic = pd.read_csv("titanic.csv")
titanic
  • DataFrame의 첫 N 행을 보고싶으면 head() 메서드를 이용해서 볼 수 있다.
  • DataFrame의 마지막 N 행을 보고싶으면 tail( )메서드를 사용하면 된다.
titanic.tail(10)
  • 열들의 데이터 타입이 알고싶다면 pandas의 dtypes 속성을 활용하면 된다.
titanic.dtypes
  • pandas 에서는 to.파일명() 을 활용해서 데이터를 저장할 수 있다. 예를 들어,
titanic.to_excel('titanic.xlsx', sheet_name = 'passengers', index = False)
  • 여기에서 to_excel() 메서드를 통해 데이터를 excel 파일로 저장했다.
    저장 형식은 (파일명, sheet_name, index) 이다.
    1. 파일명
    2. sheet_name = sheet 이름
    3. index = False 를 통해 행 인덱스 값들이 스프레드시트에 저장되지 않았다.
  • read_파일명( ) 형식을 활용해서 data를 DataFrame 으로 다시 만들 수 있다.
  • info() 메서드를 활용해서 DataFrame 의 기술적인 정보를 확인 할 수 있다

3) DataFrame 의 부분 집합을 선택하는 방법

  1. 특정 열을 선택하는 방법
    • 특정 열을 선택하고 싶다면 [열의 이름]를 활용하면 된다.
    • DataFrame의 모든 열은 Series이다. 따라서 하나의 열을 선택하면 반환값은 Series 이다.
    • DataFrame.shape 은 DataFrame 과 Series의 속성이다.
    • 여러 개의 열을 선택하고 싶다면 열의 이름의 list 를 [ ]안에 넣으면 된다.
    • age_sex = titanic[['Age', 'Sex']]
  1. 특정 행을 선택하는 방법
    • 조건을 통해서 특정 행을 선택하고자 하면 [ ] 안에 조건을 적으면 된다
    • above_35 = titanic[titanic["Age"] > 35]
    • 조건 연산자( >, ==, ≠, <, ≤ 등의 연산자들) 는 boolean 값 들의 Series 이다.
      이러한 Series는 DataFrame을 [ ] 안에 넣어서 필터링하는데 사용한다.
    • isin() 조건 함수를 사용하여 list에 포함된 값을 가지고 있는 행에 대해 참값을 반환한다.
    • class_23 = titanic[titanic["Pclass"].isin([2,3])]
    • notna() 는 행의 값이 Null 이 아닌 행들에 대해 True 값을 반환해준다.
  2. 특정 행과 열을 선택하는 방법
    • loc/iloc 연산자로 행과 열을 모두 선택할 수 있다.
      loc/iloc 연산자 안에 있는 값중 콤마(,) 앞의 값은 원하는 행,
      콤마(,) 뒤의 값은 원하는 열이 들어간다.
    • adult_names = titanic.loc[titanic["Age"]>35, "Name"]
    • loc[ , ] 에서 콤마(,) 앞 뒤에는 하나의 레이블, 레이블들의 list, 레이블들의 slice, 조건 연산자, 콜론(:) (모든 열/행 의 값) 등이 올 수 있다.
    • 특정 행과 열의 값 중에서 일부가 필요하면 iloc 을 사용하면 된다.
    • titanic.iloc[9:25,2:5]

'인공지능 > 인공지능 기초 개념' 카테고리의 다른 글

(3)-2 EDA 실습  (1) 2024.03.15
(4) EDA 필사  (0) 2024.03.15
(3)EDA  (0) 2024.03.15
(2) 데이터 시각화  (1) 2024.03.14
(1) Machine Learning  (0) 2024.03.14

+ Recent posts