Python의 데이터 분석 라이브러리인 Pandas는 데이터 분석과 처리에 필수적인 도구입니다. Pandas를 사용하면 데이터 프레임(DataFrame)과 시리즈(Series)를 효율적으로 다룰 수 있으며, 데이터 정리, 분석, 시각화 등 다양한 작업을 간편하게 수행할 수 있습니다. 이번 글에서는 Pandas의 기본적인 사용법을 소개하고 실습 예제를 통해 데이터를 다루는 방법을 알아보겠습니다.
목차
- Pandas란?
- Pandas 설치 방법
- Pandas의 주요 데이터 구조
- 데이터 읽기 및 쓰기
- 데이터 선택 및 필터링
- 데이터 처리 및 정리
- 간단한 데이터 분석 예제
1. Pandas란?
Pandas는 데이터 조작과 분석을 위해 설계된 Python 라이브러리입니다.
- 다양한 파일 형식(CSV, Excel, SQL, JSON등) 에서 데이터를 읽고 쓸 수 있음
- 데이터 정리, 필터링, 변환 작업 지원
- 통계 및 집계 연산 기능 제공
- 데이터 시각화 라이브러리(Matplotlib, Seaborn 등)와의 연동
2. Pandas 설치 방법
Pandas는 pip 명령어를 통해 간단히 설치할 수 있습니다. 터미널(또는 명령 프롬프트)에서 다음 명령어를 실행하세요.
pip install pandas
설치가 완료된 후 Pandas 버전을 확인하려면 Python 인터프리터에서 다음 코드를 실행합니다.
import pandas as pd
print(pd.__version__)
3. Pandas의 주요 데이터 구조
Pandas는 Series 와 DataFrame이라는 두 가지 주요 데이터 구조를 제공합니다.
(1) Series
Series는 1차원 배열로 인덱스와 값의 쌍으로 구성됩니다.
import pandas as pd
data = [10, 20, 30, 40]
series = pd.Series(data, index=['a', 'b', 'c', 'd'])
print(series)
# 출력
a 10
b 20
c 30
d 40
dtype: int64
(2) DataFrame
DataFrame은 행과 열로 이루어진 2차원 데이터 구조입니다.
data = {
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'City': ['New York', 'San Francisco', 'Los Angeles']
}
df = pd.DataFrame(data)
print(df)
# 출력
Name Age City
0 Alice 25 New York
1 Bob 30 San Francisco
2 Charlie 35 Los Angeles
4. 데이터 읽기 및 쓰기
Pandas는 다양한 파일 형식을 지원합니다. 가장 기본적인 CSV파일을 다루는 예제를 살펴보겠습니다.
(1) CSV 파일 읽기
df = pd.read_csv('data.csv')
print(df.head()) # 상위 5개 행 출력
(2) CSV 파일 쓰기
df.to_csv('output.csv', index=False)
Excel, SQL, JSON 등의 파일도 비슷한 방식으로 읽고 쓸 수 있습니다.
5. 데이터 선택 및 필터링
Pandas에서는 데이터를 쉽게 선택하고 필터링할 수 있습니다.
(1) 특정 열 선택
print(df['Name'])
(2) 조건 필터링
filtered = df[df['Age'] > 30]
print(filtered)
(3) 행과 열 동시 선택
print(df.loc[0, 'Name']) # 첫 번째 행의 'Name' 열 값
print(df.iloc[0, 1]) # 첫 번째 행의 두 번째 열 값
6. 데이터 처리 및 정리
(1) 결측값 처리
# 결측값 확인
print(df.isnull().sum())
# 결측값 채우기
df.fillna('Unknown', inplace=True)
# 결측값 삭제
df.dropna(inplace=True)
(2) 데이터 변환
# 열 추가
df['Age Group'] = df['Age'].apply(lambda x: 'Adult' if x >= 18 else 'Child')
# 열 이름 변경
df.rename(columns={'Name': 'Full Name'}, inplace=True)
7. 간단한 데이터 분석 예제
실제 데이터를 사용한 간단한 데이터 분석 예제를 살펴보겠습니다.
(1) 데이터 준비
예제 데이터를 생성하거나 CSV파일에서 데이터를 불러옵니다.
data = {
'Category': ['A', 'B', 'A', 'B', 'A', 'B'],
'Values': [10, 20, 15, 25, 10, 30]
}
df = pd.DataFrame(data)
(2) 데이터 집계
# 카테고리별 합계
grouped = df.groupby('Category')['Values'].sum()
print(grouped)
# 출력
Category
A 35
B 75
Name: Values, dtype: int64
(3) 시각화
import matplotlib.pyplot as plt
grouped.plot(kind='bar')
plt.title('Category-wise Sum of Values')
plt.xlabel('Category')
plt.ylabel('Sum of Values')
plt.show()
8. 결론
이번 글에서는 Pandas의 기본적인 기능과 사용법을 간단히 살펴보았습니다. Pandas는 데이터 분석의 입문자에게도 친숙하며, 복잡한 데이터 처리와 분석 작업을 간소화합니다.
'프로그래밍' 카테고리의 다른 글
OpenCV와 Python을 활용한 이미지 처리 기초 (1) | 2025.01.05 |
---|---|
Java 람다식(Lambda Expressions) (0) | 2025.01.04 |
Java에서 정규 표현식 (Regex) 활용법 (0) | 2025.01.01 |
코드 문서화를 간단하게 유지하는 방법 (2) | 2024.12.31 |
JavaScript에서 Symbol과 고유성 활용 (0) | 2024.12.30 |