language/Python

[Package/Library] pandas 자료구조(2) - DataFrame

브라우니란 2023. 11. 24. 17:11

 

1. DataFrame 란?

  • 행과 열로 구성된 2차원 배열이다. (테이블 구조 형태)
  • 각각의 컬럼은 서로 다른 종류의 데이터 타입을 사용할 수 있다.
  • 데이터 프레임 형태로 다양한 데이터 분석 및 시각화를 할 수 있다.
  • pandas 라이브러리 import 는 필수이다.
  • 일반적으로 import 한 후 별칭으로 pd를 사용한다. 

 

 

2. DataFrame 생성하기

리스트, 딕셔너리 등 다양한 형태로 원하는 데이터를 DataFrame() 안에 입력하여 데이터 프레임을 생성한다.

이때, 옵션을 통해 컬럼명이나 인덱스를 지정할 수 있다.

import pandas as pd

# 리스트
df_from_lst = DataFrame([[1,2,3],  # 1행
                [4,5,6],  # 2행
                [7,8,9]]) # 3행



# 딕셔너리
data = {"도시":["서울","부산","강원","인천"], # 첫번째 컬럼
        "인구수":[500,400,200,300]}          # 두번째 컬럼
df_from_dict = DataFrame(data)


# index, columns 옵션 사용하기
df_set_op = DataFrame([[1,2,3],
                [4,5,6],
                [7,8,9]], 
               index = ['a','b','c'],
               columns = ['x','y', 'z'])

 

 

 

3. DataFrame 속성

  • columns: 데이터 프레임 속 컬럼의 정보를 확인
  • index: 데이터 프레임 속 인덱스 정보를 확인
  • values: 데이터 프레임 속 값을 확인
  • dtypes: 데이터 프레임 각각의 컬럼 데이터 타입을 확인
  • 이 외에도 다양한 속성이 존재한다. 
from pandas import Series, DataFrame
import pandas as pd



data = {"도시":["서울","부산","강원","인천"],
        "인구수":[500,400,200,300]}
df = DataFrame(data)


df.columns # 데이터 컬럼 정보 확인
df.index # 데이터프레임 인덱스 정보 확인
df.values # 데이터프레임 값의 정보 확인
df.dtypes # 데이터프레임 각 컬럼의 데이터 타입 확인

 

 

 

 

 

https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html

 

pandas.DataFrame — pandas 2.1.3 documentation

Dict can contain Series, arrays, constants, dataclass or list-like objects. If data is a dict, column order follows insertion-order. If a dict contains Series which have an index defined, it is aligned by its index. This alignment also occurs if data is a

pandas.pydata.org

 

 

 

5. DataFrame 메소드

  • describe(): 데이터 프레임 속 값들의 통계 정보를 출력한다.
  • info(): 요약, 보통 각 컬럼에 대해 null 여부, 데이터 타입 등의 정보를 전달한다.
  • head(): 전체 데이터 프레임의 행 중 윗 부부만 출력해서 보여준다. (default = 10)
  • tail(): head()와 반대로 데이터 프레임의 행 중 아래 부분만 출력해서 보여준다. (default = 10)
from pandas import Series, DataFrame
import pandas as pd



data = {"도시":["서울","부산","강원","인천"],
        "인구수":[500,400,200,300]}
df = DataFrame(data)


df.describe()
df.info()