1. Pandas 개요
Pandas는 데이터 분석을 위한 파이썬 라이브러리로, 표 형태의 데이터를 효율적으로 처리하기 위해 사용된다.
주로 Series와 DataFrame이라는 두 가지 핵심 자료구조를 중심으로 데이터 분석 작업을 수행한다.
NumPy 위에서 동작하며, 다음과 같은 작업을 쉽게 수행할 수 있다.
- 데이터 정렬 및 정제
- 데이터 선택 및 필터링
- 통계 분석
- 그룹 연산
- 데이터 파일 입출력
설치
pip install pandas
기본 사용
import pandas as pd
2. Series
2.1 Series 개념
Series는 1차원 배열 구조의 데이터이다.
각 데이터는 index와 value로 구성된다.
구조
index → valueSeries는 내부적으로 NumPy ndarray 기반으로 저장된다.
2.2 Series 생성
idx = ['김사과', '반하나', '오렌지', '이메론', '배애리']
data = [67, 75, 90, 62, 98]
s = pd.Series(data)
print(s)
# 결과
# 0 67
# 1 75
# 2 90
# 3 62
# 4 98
# dtype: int64
인덱스 지정
s = pd.Series(data, index=idx)
print(s)
# 결과
# 김사과 67
# 반하나 75
# 오렌지 90
# 이메론 62
# 배애리 98
# dtype: int64
ai가 추천하는 심화 예제
Series를 이용한 간단한 통계 분석
scores = pd.Series([80, 75, 90, 95, 60])
print(scores.mean())
print(scores.max())
print(scores.min())
# 결과
# 80.0
# 95
# 60
3. DataFrame
3.1 DataFrame 개념
DataFrame은 2차원 테이블 구조의 데이터이다.
구조
index → 행
columns → 열
value → 데이터엑셀의 표와 매우 유사하다.
3.2 DataFrame 생성
dictionary 기반 생성
data = {
'이름': ['김사과','반하나','오렌지'],
'나이': [20,21,19],
'점수': [90,85,88]
}
df = pd.DataFrame(data)
print(df)
# 결과
# 이름 나이 점수
# 0 김사과 20 90
# 1 반하나 21 85
# 2 오렌지 19 88
ai가 추천하는 심화 예제
데이터프레임 통계 확인
print(df.describe())
# 결과
# 나이 점수
# count 3.000000 3.000000
# mean 20.000000 87.666667
# std 1.000000 2.516611
# min 19.000000 85.000000
# max 21.000000 90.000000
4. DataFrame 기본 정보 확인
shape
데이터 구조 확인
print(df.shape)
# 결과
# (3, 3)
columns
컬럼 목록 확인
print(df.columns)
# 결과
# Index(['이름', '나이', '점수'], dtype='object')
info()
데이터 타입 확인
print(df.info())
# 결과
# <class 'pandas.core.frame.DataFrame'>
# RangeIndex: 3 entries
# Data columns (total 3 columns)
5. 데이터 선택
컬럼 선택
print(df['이름'])
# 결과
# 0 김사과
# 1 반하나
# 2 오렌지
여러 컬럼 선택
print(df[['이름','점수']])
# 결과
# 이름 점수
# 0 김사과 90
# 1 반하나 85
# 2 오렌지 88
ai가 추천하는 심화 예제
조건 기반 선택
result = df[df['점수'] > 85]
print(result)
# 결과
# 이름 나이 점수
# 0 김사과 20 90
# 2 오렌지 19 88
6. loc / iloc
loc
인덱스 기준 선택
print(df.loc[0])
# 결과
# 이름 김사과
# 나이 20
# 점수 90
iloc
위치 기반 선택
print(df.iloc[0])
# 결과
# 이름 김사과
# 나이 20
# 점수 90
ai가 추천하는 심화 예제
행과 열 동시에 선택
print(df.iloc[0:2, 1:3])
# 결과
# 나이 점수
# 0 20 90
# 1 21 85
7. 데이터 추가
컬럼 추가
df['합격'] = [True, True, True]
print(df)
# 결과
# 이름 나이 점수 합격
# 0 김사과 20 90 True
# 1 반하나 21 85 True
# 2 오렌지 19 88 True
ai가 추천하는 심화 예제
조건 기반 컬럼 생성
df['등급'] = df['점수'].apply(lambda x: 'A' if x >= 90 else 'B')
print(df)
# 결과
# 이름 나이 점수 합격 등급
# 0 김사과 20 90 True A
# 1 반하나 21 85 True B
# 2 오렌지 19 88 True B
8. 데이터 정렬
df_sorted = df.sort_values(by='점수')
print(df_sorted)
# 결과
# 이름 나이 점수
# 1 반하나 21 85
# 2 오렌지 19 88
# 0 김사과 20 90
ai가 추천하는 심화 예제
내림차순 정렬
df_sorted = df.sort_values(by='점수', ascending=False)
print(df_sorted)
# 결과
# 이름 나이 점수
# 0 김사과 20 90
# 2 오렌지 19 88
# 1 반하나 21 85
9. 그룹 연산 (groupby)
data = {
'팀': ['A','A','B','B'],
'점수': [90,85,88,92]
}
df = pd.DataFrame(data)
result = df.groupby('팀').mean()
print(result)
# 결과
# 점수
# 팀
# A 87.5
# B 90.0
ai가 추천하는 심화 예제
그룹별 최대값
result = df.groupby('팀')['점수'].max()
print(result)
# 결과
# 팀
# A 90
# B 92
10. 파일 입출력
CSV 읽기
df = pd.read_csv('data.csv')
CSV 저장
df.to_csv('result.csv', index=False)
ai가 추천하는 심화 예제
엑셀 파일 읽기
df = pd.read_excel('data.xlsx')
print(df.head())
# 결과
# 상위 5개 행 출력
11. 정리
Pandas는 데이터 분석에서 가장 핵심적으로 사용되는 라이브러리이다.
핵심 구조
- Series → 1차원 데이터
- DataFrame → 2차원 테이블 데이터
주요 기능
- 데이터 선택
- 조건 필터링
- 통계 분석
- 그룹 연산
- 데이터 정렬
- 파일 입출력
Pandas는 데이터 분석, 머신러닝 전처리, 통계 분석 등 대부분의 데이터 기반 작업에서 필수적으로 사용된다.
'KDT 수업 > 파이썬 공부' 카테고리의 다른 글
| 내가 보려고 만든 파이토치(Pytorch) 정리 (0) | 2026.03.18 |
|---|---|
| 내가 보려고 만든 MatPlotLib 정리 (0) | 2026.03.12 |
| 내가 보려고 만든 크롤링 정리 (0) | 2026.03.12 |
| 내가 보려고 만든 NumPy 정리 (1) | 2026.03.12 |
| 10.22 파이썬 컬렉션 타입 (0) | 2025.10.22 |