반응형
Pandas는 Python에서 데이터를 조작하고 분석하는 데 매우 유용한 라이브러리입니다. 주로 구조화된 데이터를 처리하는 데 사용되며, 특히 데이터 프레임(DataFrame)과 시리즈(Series)를 사용한 데이터 분석 작업에 탁월한 성능을 제공합니다. 아래는 Pandas에 대한 주요 개념과 특징입니다.
1. Pandas의 주요 데이터 구조
- Series: 1차원 배열로, 인덱스를 가지고 있습니다. 리스트나 1차원 배열과 유사합니다.
import pandas as pd
s = pd.Series([1, 2, 3, 4])
print(s)
- DataFrame: 2차원 구조로, 행(row)과 열(column)을 가지며, 테이블 형식의 데이터를 다룰 수 있습니다.
data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]}
df = pd.DataFrame(data)
print(df)
2. Pandas의 주요 기능
- 데이터 읽기/쓰기: CSV, Excel, SQL, JSON 등의 다양한 형식의 파일 입출력을 지원합니다.
df = pd.read_csv('data.csv') # CSV 파일 읽기
df.to_csv('output.csv') # CSV 파일로 저장
- 데이터 탐색:
head()
,tail()
: 데이터의 앞부분 또는 뒷부분 확인info()
: 데이터 구조 정보 확인describe()
: 기본 통계 요약 제공
print(df.head())
print(df.info())
print(df.describe())
- 데이터 필터링 및 선택:
- 특정 행/열 선택
- 조건에 따라 데이터 필터링
filtered = df[df['Age'] > 30] # 'Age'가 30 이상인 행 선택
- 데이터 정리 및 변환:
- 결측값 처리:
isnull()
,fillna()
,dropna()
- 데이터 정렬:
sort_values()
- 데이터 집계 및 그룹화:
groupby()
,agg()
- 결측값 처리:
grouped = df.groupby('Age').mean() # 'Age'를 기준으로 그룹화 후 평균 계산
3. Pandas를 사용하는 이유
- 다양한 데이터 소스 지원: Pandas는 CSV, Excel, SQL, JSON 등 다양한 파일 형식을 쉽게 읽고 쓸 수 있습니다.
- 강력한 데이터 처리 기능: 결측값 처리, 데이터 정렬, 그룹화, 피벗 테이블 등 강력한 기능을 제공합니다.
- 사용하기 쉬운 API: 직관적인 함수 이름과 인덱싱 방식을 통해 데이터 작업을 빠르고 간단하게 수행할 수 있습니다.
- Python 생태계와의 통합: NumPy, Matplotlib, Scikit-learn 등과 쉽게 통합할 수 있어 데이터 분석 워크플로우에서 중심적인 역할을 합니다.
4. Pandas 설치
Pandas는 pip를 사용하여 설치할 수 있습니다.
pip install pandas
5. 기본 사용 예시
import pandas as pd
# 데이터프레임 생성
data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]}
df = pd.DataFrame(data)
# 데이터 탐색
print(df.head()) # 데이터프레임의 상위 5개 행 출력
print(df.describe()) # 기본 통계 요약
# 데이터 필터링
filtered_df = df[df['Age'] > 30]
print(filtered_df)
# 새로운 열 추가
df['Is_Adult'] = df['Age'] > 18
print(df)
Pandas는 데이터 분석을 위한 핵심 도구로, 데이터를 직관적이고 효율적으로 다룰 수 있게 해줍니다.
반응형
'언어 > Python' 카테고리의 다른 글
[ Python ] Requests - Rest API 사용하기 (0) | 2025.01.12 |
---|---|
[ Python ] 상위 폴더에 있는 모듈 import 시 경로 설정하기 (0) | 2025.01.12 |
[ Python ] 설치하기 (특정 버전) (0) | 2025.01.11 |
[ Python ] 파이썬을 지원하는 다양한 종류의 Framework 알아보기 (0) | 2025.01.11 |
[ Python ] if in - 문자 배열에 특정 문자가 들어 있는 지 확인하고 분기하기 (0) | 2025.01.10 |