ㅇPandas 라이브러리: Python 에서 데이터 분석과 조작을 위해 널리 사용되는 오픈소스 라이브러리
효율적인 데이터 구조와 풍부한 기능을 제공하여 다양한 데이터 작업을 간단하게 수행할 수 있도록 도와준다. 주로 Series와 DataFrame이라는 두 가지 주요 데이터 구조를 사용하며, 데이터 처리 속도를 크게 향상시키는 것이 특징이다.
[Pandas의 주요 데이터 구조 2가지]
1. Series: 1차원 배열로, 인덱스를 포함하는 데이터 구조
리스트나 딕셔너리를 기반으로 생성할 수 있으며, 데이터와 인덱스를 함께 저장한다
import pandas as pd
# 리스트를 기반으로 Series 생성
data = [10, 20, 30]
series = pd.Series(data, index=['A', 'B', 'C'])
print(series)
(결과)
A 10
B 20
C 30
dtype: int64
2. DataFrame: 행과 열로 구성된 2차원 데이터 구조
테이블 형식의 데이터를 처리하는 데 적합하며, 엑셀 스프레드시트와 비슷한 구조를 가진다
import pandas as pd
# 딕셔너리를 기반으로 DataFrame 생성
data = {
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'City': ['Seoul', 'Busan', 'Incheon']
}
df = pd.DataFrame(data)
print(df)
(결과)
Name Age City
0 Alice 25 Seoul
1 Bob 30 Busan
2 Charlie 35 Incheon
[Pandas의 주요 기능]
1. 데이터 읽기 및 쓰기
Pandas는 다양한 파일 형식(CSV, Excel, JSON 등)의 데이터를 읽고 쓸 수 있다
# CSV 파일 읽기
df = pd.read_csv('data.csv')
# DataFrame을 Excel 파일로 저장
df.to_excel('output.xlsx', index=False)
2. 데이터 필터링 및 선택
특정 조건에 따라 데이터를 선택하거나 필터링할 수 있다
# 특정 열 선택
print(df['Name'])
# 조건에 따라 필터링
filtered_df = df[df['Age'] > 30]
print(filtered_df)
3. 결측값 처리
데이터셋에서 결측값을 처리하는 기능도 제공한다
# 결측값 채우기
df.fillna(0, inplace=True)
# 결측값 제거
df.dropna(inplace=True)
4. 데이터 정렬
행 또는 열을 기준으로 데이터를 정렬할 수 있다
# 나이(Age) 기준으로 정렬
sorted_df = df.sort_values(by='Age', ascending=False)
print(sorted_df)
5. 그룹화 및 집계
데이터를 그룹화하고 요약 통계를 계산할 수 있다
# 도시(City)별 나이 평균 계산
grouped = df.groupby('City')['Age'].mean()
print(grouped)
[Pandas의 장점]
- 다양한 데이터 형식 지원
Pandas는 CSV, Excel, JSON 등 다양한 파일 형식을 읽고 쓸 수 있어 데이터 호환성이 높다 - 강력한 데이터 조작 기능
데이터 필터링, 병합, 정렬, 그룹화 등 데이터 조작에 필요한 모든 기능을 제공한다 - 파이썬 생태계와의 통합
Pandas는 Numpy와 같은 다른 파이썬 라이브러리와 잘 통합되며, 데이터 분석 및 시각화 라이브러리(Matplotlib, Seaborn)와도 호환성이 뛰어나다
[Pandas 활용 분야]
- 엑셀 데이터 분석
엑셀에서 처리하기 어려운 대량 데이터를 Pandas로 분석하고 시각화하는 데 사용된다 - 웹 스크래핑 데이터 처리
웹에서 가져온 데이터를 Pandas로 정리하고 분석하여 통찰력을 도출한다 - 머신러닝 데이터 전처리
Pandas는 머신러닝 모델 학습에 사용될 데이터를 정제하고 준비하는 데 중요한 역할을 한다
Pandas는 데이터 분석 작업을 간소화하고 효율적으로 수행할 수 있는 강력한 도구이다. Python을 사용하여 데이터 분석이나 머신러닝을 수행하려는 사람에게 Pandas는 필수적인 라이브러리이다. 데이터를 다루는 데 있어 Pandas의 풍부한 기능을 활용하면 복잡한 문제를 효과적으로 해결할 수 있다. Pandas 최고!
'인공지능 > 데이터 분석' 카테고리의 다른 글
[데이터 분석] Joblib 라이브러리 (0) | 2024.12.17 |
---|