[Pandas] 판다스 활용하기: 하
데이터프레임(DataFrame)
- 판다스 라이브러리에서 제공하는 자료구조 중 하나
- 행과 열로 이루어진 2차원 데이터 구조
- 열은 서로 다른 유형의 데이터를 담을 수 있는 시리즈(Series)로 구성되어있음
- 각 행은 데이터프레임의 하나의 레코드를 나타내며 고유한 인덱스를 가짐
import pandas as pd
df = pd.DataFrame(data)
딕셔너리로 생성
# 딕셔너리로 생성하기
data_dict = {
'이름': ['홍길동', '김철수', '이영희', '박지원', '장민주', '신동호', '김민지', '이하늘', '정승우', '한지혜'],
'나이': [25, 30, 28, 22, 29, 27, 24, 26, None, 23],
'성별': ['남', '남', '여', '남', '여', '남', '여', '여', None, '여']
}
리스트로 생성
columns = ['이름', '나이', '성별']
data_list = [['홍길동', 25, '남'],
['김철수', 30, '남'],
['이영희', 28, '여'],
['박지원', 22, '남'],]
df2 = pd.DataFrame(data_list, columns=columns)
df2
시리즈를 데이터프레임으로 변환1
# 예시 시리즈 생성
s = pd.Series([1, 2, 3, 4, 5], name='Value')
# 시리즈를 데이터프레임으로 변환
df = pd.DataFrame(s)
시리즈를 데이터프레임으로 변환2
to_frame()함수를 이용해 변환 가능
# 예시 시리즈 데이터 생성
series1 = pd.Series([10, 20, 30, 40, 50], name='Value')
# 시리즈를 데이터프레임으로 변환
df = series1.to_frame()
시리즈를 데이터프레임으로 변환3
concat()함수를 이용해 두 개의 시리즈를 합쳐 데이터프레임 생성 가능
# 예시 시리즈 데이터 생성
series1 = pd.Series([10, 20, 30, 40, 50], name='Value1')
series2 = pd.Series([100, 200, 300, 400, 500], name='Value2')
# 시리즈를 데이터프레임으로 변환하고 인덱스 초기화
df = pd.concat([series1, series2], axis=1)
axis=1은 데이터를 수평으로 이어붙임
데이터프레임 속성과 메소드
columns
- 데이터프레임의 컬럼 확인
df.columns
index
- 데이터프레임의 인덱스 확인
df.index
- 결과 예시
RangeIndex(start=0, stop=7, step=1)
values
- 데이터프레임의 값 확인
df.values
dtypes
- 데이터프레임의 타입 확인
df.dtypes
head()
- 데이터 앞부분 확인
- 기본적으로 5개의 항목 반환
df.head()
tail()
- 데이터 뒷부분 확인
- 기본적으로 5개의 항목 반환
df.tail()
info()
- 데이터프레임 정보 확인
df.info()
shape
- 데이터 형태 확인
- 데이터프레임의 행(row)과 열(column)의 개수 반환
df.shape
- 결과 예시
(7, 4)
len()
- 데이터프레임 길이 확인
- 행(row)의 수를 반환
- 사용 예시
- 데이터 레코드 개수 파악
- 데이터프레임에 저장된 데이터의 레코드(행)의 개수 파악 가능
- 반복문 설정
- 데이터프레임을 반복문으로 처리할 때, 반복의 횟수를 설정하는데 활용
- 데이터 탐색
- 데이터의 양이 얼마나 되는지를 파악하여 데이터 탐색에 도움
- 데이터 레코드 개수 파악
len(df)
size
- 데이터 크기 확인
- 데이터프레임의 전체 요소 수를 반환
- 요소 수에는 행과 열이 모두 포함
- 사용 예시
- 데이터 크기 파악
- 데이터프레임에 저장된 전체 데이터의 개수를 파악
- 메모리 사용량 파악
- 데이터프레임이 메모리에서 얼마나 많은 공간을 차지하는지를 파악
- 데이터 크기 비교
- 두 개 이상의 데이터프레임을 비교할 때
- 데이터 크기 파악
df.size
describe()
- 데이터프레임 통계값 확인
- 각 열에 대한 통계 정보가 포함된 결과 반환
- 결과에는 열의 수, 평균값, 표준편차, 최소값, 25%, 50%, 75%, 백분위수, 최대값
- 기본적으로 수치형 열에 대한 통계만 제공
- 사용 예시
- 데이터 분포 파악
- 각 열의 데이터가 어떻게 분포되어 있는지를 파악
- 이상치 탐지
- 특히 평균값과 백분위수를 통해 이상치 탐지 가능
- 결측치 확인
- count를 통해 각 열에 결측치가 있는지 확인 가능
- 통계적 요약
- 데이터의 대략적인 통계적 특성을 빠르게 파악 가능
- 시각화 전처리
- 시각화 전에 데이터의 특성을 파악하여 적절한 시각화 방법 선택 가능
- 데이터 분포 파악
df.describe()
Leave a comment