[Python]데이터 분석하기: Pandas 사용법 소개

데이터 분석은 다양한 산업과 분야에서 중요한 역할을 합니다. Python은 그 유연성과 강력한 라이브러리 덕분에 데이터 분석에 널리 사용되는 언어입니다. 특히 Pandas는 데이터 조작과 분석을 위한 핵심 라이브러리로, 데이터프레임(DataFrame)을 이용해 효율적으로 데이터를 다룰 수 있게 해줍니다. 이번 글에서는 Pandas 사용법 소개와 주요 기능을 소개하여 데이터 분석에 입문하는 데 도움을 드리겠습니다.

1. Pandas 설치

Pandas를 사용하기 위해서는 먼저 라이브러리를 설치해야 합니다. 터미널이나 명령 프롬프트에서 다음 명령어를 실행하여 Pandas를 설치할 수 있습니다.

pip install pandas

설치가 완료되면, Python 코드에서 Pandas를 불러와 사용할 준비가 됩니다.

2. 데이터프레임의 생성과 기본 사용법

데이터프레임은 Pandas의 핵심 데이터 구조로, 행과 열로 이루어진 2차원 데이터를 저장합니다. 데이터프레임을 생성하고 기본적으로 다루는 방법을 살펴보겠습니다.

import pandas as pd

# 데이터 준비
data = {
'Name': ['John', 'Anna', 'Peter', 'Linda'],
'Age': [28, 24, 35, 32],
'City': ['New York', 'Paris', 'Berlin', 'London']
}

# 데이터프레임 생성
df = pd.DataFrame(data)

# 데이터프레임 출력
print(df)

위 코드에서는 딕셔너리를 이용해 데이터프레임을 생성하고 출력합니다. 데이터프레임은 표와 같은 형태로 데이터를 저장하여 다루기 쉽게 해줍니다.

3. 데이터 읽기와 쓰기

Pandas는 다양한 파일 형식에서 데이터를 읽고 쓸 수 있습니다. 가장 일반적으로 사용되는 형식은 CSV 파일입니다.

3.1. CSV 파일 읽기

# CSV 파일 읽기
df = pd.read_csv('data.csv')

# 데이터프레임 출력
print(df.head())

read_csv 함수는 CSV 파일을 읽어 데이터프레임으로 변환합니다. head 메서드는 데이터프레임의 처음 5개 행을 출력합니다.

3.2. CSV 파일 쓰기

# 데이터프레임을 CSV 파일로 저장
df.to_csv('output.csv', index=False)

to_csv 함수는 데이터프레임을 CSV 파일로 저장합니다. index=False 매개변수는 인덱스를 제외하고 저장하도록 합니다.

4. 데이터프레임의 주요 기능

Pandas 데이터프레임은 다양한 기능을 제공하여 데이터 분석을 쉽게 해줍니다. 몇 가지 주요 기능을 살펴보겠습니다.

4.1. 데이터 선택과 필터링

데이터프레임에서 특정 열이나 행을 선택하고, 조건에 맞는 데이터를 필터링할 수 있습니다.

# 특정 열 선택
names = df['Name']
print(names)

# 조건에 맞는 행 필터링
adults = df[df['Age'] > 30]
print(adults)

위 코드에서는 ['Name']을 사용하여 특정 열을 선택하고, 조건문을 사용하여 나이가 30보다 큰 행을 필터링합니다.

4.2. 데이터 정렬

데이터프레임을 특정 열을 기준으로 정렬할 수 있습니다.

# 나이 기준으로 데이터 정렬
sorted_df = df.sort_values(by='Age')
print(sorted_df)

sort_values 함수를 사용하여 데이터프레임을 나이 기준으로 오름차순 정렬합니다.

4.3. 데이터 요약

데이터프레임의 요약 통계를 계산하여 데이터를 빠르게 파악할 수 있습니다.

# 데이터 요약 통계
summary = df.describe()
print(summary)

describe 메서드는 데이터프레임의 요약 통계를 계산하여 반환합니다.

4.4. 결측값 처리

데이터 분석 시 결측값을 처리하는 것은 매우 중요합니다. Pandas는 결측값을 쉽게 다룰 수 있는 기능을 제공합니다.

# 결측값 확인
missing_values = df.isnull().sum()
print(missing_values)

# 결측값 채우기
df['Age'].fillna(df['Age'].mean(), inplace=True)
print(df)

위 코드에서는 isnull 메서드를 사용하여 결측값을 확인하고, fillna 메서드를 사용하여 결측값을 평균 값으로 채웁니다.

5. 고급 데이터 조작

Pandas는 고급 데이터 조작 기능도 제공합니다. 예를 들어, 그룹화와 집계 연산을 통해 데이터를 더 깊이 분석할 수 있습니다.

5.1. 그룹화와 집계

# 도시에 따른 나이 평균 계산
grouped = df.groupby('City')['Age'].mean()
print(grouped)

groupby 메서드를 사용하여 데이터를 그룹화하고, mean 메서드를 사용하여 각 그룹의 나이 평균을 계산합니다.

5.2. 데이터 병합

여러 데이터프레임을 병합하여 하나의 데이터프레임으로 만들 수 있습니다.

# 추가 데이터 준비
data2 = {
'Name': ['John', 'Anna', 'Peter', 'Linda'],
'Salary': [50000, 60000, 55000, 58000]
}
df2 = pd.DataFrame(data2)

# 데이터프레임 병합
merged_df = pd.merge(df, df2, on='Name')
print(merged_df)

merge 메서드는 두 데이터프레임을 특정 열을 기준으로 병합합니다.

결론

Pandas는 데이터 분석을 위한 강력하고 유연한 라이브러리입니다. 이번 글에서는 Pandas의 기본 사용법과 주요 기능을 소개했습니다. 이러한 기초를 바탕으로 더 복잡한 데이터 분석 작업에도 도전해 보세요. Pandas의 공식 문서와 다양한 온라인 튜토리얼을 참고하면 더 많은 기능과 활용법을 배울 수 있습니다. 데이터 분석을 통해 데이터를 더 쉽게 이해하고, 인사이트를 도출하는 데 큰 도움이 되기를 바랍니다.

이 게시물이 얼마나 유용했습니까?

평가하려면 별표를 클릭하세요.

평균 평점 5 / 5. 투표 수: 105

지금까지 투표 한 사람이 없습니다. 가장 먼저 게시물을 평가해 보세요.

Leave a Comment

error: 우클릭 할 수 없습니다.