본문 바로가기
[파이썬]/데이터 분석

[데이터 분석] 판다스를 활용한 데이터프레임 생성 및 개념

by sung min_Kim 2023. 11. 29.
· 데이터프레임이란


 데이터프레임은 행과 열로 구성된 2차원의 데이터 구조를 가진다. 이는 표 형태의 데이터를 다루기에 적합하며, 행은 개별 데이터를, 열은 데이터의 속성을 나타낸다. 각 열은 서로 다른 데이터 타입(정수, 실수, 문자열 등)을 가질 수 있다. 즉, 하나의 데이터프레임 내에서도 다양한 유형의 데이터를 관리할 수 있다.
 또한, 데이터프레임은 행과 열 모두에 레이블을 지정할 수 있다. '레이블'이란 데이터를 구분하고 식별하기 위한 태그나 이름을 말한다. 열 레이블은 각 열의 이름을 말하고, 행 레이블은 보통 데이터의 순서를 나타내는 인덱스를 사용하여 각 행을 구분한다. 이 레이블을 사용하면 원하는 데이터에 쉽게 접근할 수 있다. 특히, 판다스 라이브러리의 데이터프레임은 레이블을 기반으로 데이터를 선택하거나 필터링하는 등의 기능을 잘 지원하며, 데이터 분석에 매우 유용하게 사용된다.

 


· 데이터프레임을 사용하는 이유는 ?

 

  1. 다양한 데이터 타입을 한 곳에서 관리할 수 있다. 각 열마다 다른 데이터 타입을 가질 수 있으므로, 복잡한 데이터도 효과적으로 관리할 수 있다.

  2. 데이터프레임은 통계적 분석을 위한 다양한 기능을 제공한다. 평균(mean), 중앙값(50%), 표준편차(std) 등의 통계량을 쉽게 계산할 수 있으며, 누락된 데이터를 처리하는 기능도 제공한다.

  3. 데이터프레임은 크기가 유연하다. 즉, 행이나 열을 쉽게 추가하거나 삭제할 수 있다. 이는 데이터를 동적으로 관리하는데 매우 유용하다.

  4. 데이터프레임은 데이터를 쉽게 필터링하고 정렬할 수 있다. 이는 데이터를 다양한 방법으로 탐색하고 분석하는데 도움이 된다.


 따라서, 데이터프레임은 데이터 관리와 분석을 쉽고 효과적으로 수행할 수 있게 도와주는 강력한 도구이다.

 


· 데이터프레임 생성


 판다스를 사용하여 데이터프레임을 생성한다.
 판다스는 데이터프레임을 생성하는 함수 'pd.DataFrame()'를 제공한다. 

data = [[]], [], {}, ()

# 데이터프레임을 생성하는 일반적인 형태
df = pd.DataFrame(data)

# 열 이름을 지정
df = pd.DataFrame(data, columns=['A', 'B', 'C'])

# 열 이름과 인덱스 번호를 지정
df = pd.DataFrame(data, columns=['A', 'B', 'C'], index=['one', 'two', 'three'])

# 빈 데이터프레임 생성
df = pd.DataFrame()


 위는 데이터프레임을 생성하는 형태이다. 'pd.DataFrame' 함수 안의 매개변수 'data'에는 여러 데이터 올 수 있다. 리스트 안의 리스트, 리스트, 딕셔너리, 시리즈 등의 다양한 유형의 데이터 등이 해당된다.

 만약 열 이름을 지정하고 싶다면, 'columns'를 매개변수로 사용하여 지정할 수 있으며, 인덱스 번호를 지정하고 싶다면 'index'를 매개변수로 사용하여 인덱스 번호를 지정할 수 있다.
만약 빈 껍데기의 데이터프레임을 생성하고 싶다면 매개변수를 공란으로 두면 된다.

 


· 예시

 

<년도, 시간, 전력량을 열 이름으로 가지는 단일 테이블 생성하기>
result_df = pd.DataFrame(columns = ["년도", "시간", "전력량"])
result_df


 위의 코드는 "년도", "시간", "전력량"을 열 이름으로 가지는 빈 데이터프레임 'result_df'를 생성하는 코드이다. 'pd.DataFrame' 함수의 매개변수에 리스트를 전달함으로써 데이터프레임의 열 이름을 지정하고 있다.


 'result_df'라는 변수에 판다스의 데이터프레임을 생성하는 함수 'pd.DataFrame'를 사용하여, 열의 이름을 "년도", 시간", "전력량"으로 하는 새로운 빈 데이터프레임 객체를 생성하였다. 이후에 이 데이터프레임에 데이터를 추가하거나 변경하는 등의 작업을 통해 이 데이터프레임을 관리할 수 있다.
 이렇게 생성한 데이터프레임을 파일 또는 데이터베이스에 저장하여 필요할 때에 재사용할 수 있도록 하면, 나중에 사용해야 할 때 다시 만들일은 없을 것이다. 

(데이터를 파일에 저장하거나, 데이터베이스에 저장하는 내용은 아래의 링크를 참고하시길 바란다.)
2023.11.29 - [[파이썬]/데이터 분석] - [데이터 분석] 데이터 저장_파일 (+CSV 개념)

2023.11.29 - [[파이썬]/데이터 분석] - [데이터 분석] 데이터 저장_데이터베이스(+sqlalchemy, pymysql)

 



데이터프레임은 행과 열로 구성되며, 각 열이 서로 다른 데이터 타입을 가질 수 있다.


데이터프레임은 단순히 데이터를 저장하는 용도가 아니라,
데이터 분석에 필요한 다양한 기능을 제공한다.


데이터프레임을 활용하면,
데이터를 필터링, 변환, 집계 등 복잡한 데이터 처리 작업을 쉽게 수행할 수 있다.


대용량 데이터 처리에 있어서 데이터프레임의 활용은 거의 필수적이라 할 수 있다.