Python과 Pandas: 데이터 분석 기초

Python과 Pandas: 데이터 분석 기초


목차

  1. 서론
  2. Pandas란 무엇인가?
    1. Pandas의 장점
    2. Pandas 설치 방법
  3. Pandas의 주요 데이터 구조
    1. Series
    2. DataFrame
  4. 데이터 불러오기 및 저장하기
    1. CSV 파일 불러오기
    2. Excel 파일 불러오기
    3. 데이터 저장하기
  5. 데이터 탐색 및 조작
    1. 데이터 살펴보기
    2. 데이터 선택 및 필터링
    3. 데이터 정렬
  6. 데이터 처리 및 변환
    1. 결측값 처리
    2. 데이터 그룹화
    3. 데이터 변형
  7. 실습 예제: 영화 데이터 분석
  8. 결론
  9. 추천 태그

1. 서론

데이터 분석은 현대 비즈니스와 연구에 필수적인 기술입니다. Python은 데이터 분석에 매우 적합한 언어로, 그 중에서도 Pandas는 데이터 조작 및 분석을 위한 강력한 도구입니다. 이번 포스팅에서는 초보 개발자도 쉽게 이해할 수 있도록 Pandas를 사용하여 데이터 분석을 수행하는 방법을 설명하겠습니다.


2. Pandas란 무엇인가?


2.1 Pandas의 장점

Pandas는 Python에서 데이터 조작과 분석을 위한 라이브러리입니다. Pandas를 사용하면 데이터를 효율적으로 처리하고, 다양한 형식의 데이터를 쉽게 다룰 수 있습니다. 주요 장점으로는 다음과 같습니다:

  • 데이터 프레임과 시리즈를 사용한 데이터 구조화
  • 데이터 불러오기, 저장, 처리, 변형 기능 제공
  • 통계적 데이터 분석 기능 제공

2.2 Pandas 설치 방법

Pandas를 설치하려면 pip를 사용합니다.


pip install pandas

3. Pandas의 주요 데이터 구조


3.1 Series

Series는 1차원 배열과 같은 데이터 구조로, 인덱스를 가지고 있습니다.


import pandas as pd

data = [1, 2, 3, 4, 5]
series = pd.Series(data)
print(series)

3.2 DataFrame

DataFrame은 2차원 표 형태의 데이터 구조로, 행과 열로 구성됩니다.


import pandas as pd

data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 35],
    'City': ['New York', 'Los Angeles', 'Chicago']
}
df = pd.DataFrame(data)
print(df)

4. 데이터 불러오기 및 저장하기


4.1 CSV 파일 불러오기

CSV 파일을 불러오려면 read_csv 함수를 사용합니다.


import pandas as pd

df = pd.read_csv('data.csv')
print(df.head())  # 첫 5개 행 출력

4.2 Excel 파일 불러오기

Excel 파일을 불러오려면 read_excel 함수를 사용합니다.


import pandas as pd

df = pd.read_excel('data.xlsx', sheet_name='Sheet1')
print(df.head())  # 첫 5개 행 출력

4.3 데이터 저장하기

데이터를 CSV 파일로 저장하려면 to_csv 함수를 사용합니다.


df.to_csv('output.csv', index=False)

5. 데이터 탐색 및 조작


5.1 데이터 살펴보기

데이터를 탐색하는 방법을 알아보겠습니다.


print(df.head())  # 첫 5개 행 출력
print(df.tail())  # 마지막 5개 행 출력
print(df.info())  # 데이터프레임 정보 출력
print(df.describe())  # 기술 통계 출력

5.2 데이터 선택 및 필터링

특정 열과 행을 선택하는 방법을 알아보겠습니다.


print(df['Name'])  # 특정 열 선택
print(df[['Name', 'Age']])  # 여러 열 선택

# 조건을 이용한 필터링
filtered_df = df[df['Age'] > 30]
print(filtered_df)

5.3 데이터 정렬

데이터를 정렬하는 방법을 알아보겠습니다.


sorted_df = df.sort_values(by='Age')
print(sorted_df)

6. 데이터 처리 및 변환


6.1 결측값 처리

결측값을 처리하는 방법을 알아보겠습니다.


df['Age'].fillna(df['Age'].mean(), inplace=True)  # 결측값을 평균으로 대체
print(df.isnull().sum())  # 결측값 개수 확인

6.2 데이터 그룹화

데이터를 그룹화하여 집계하는 방법을 알아보겠습니다.


grouped_df = df.groupby('City').mean()
print(grouped_df)

6.3 데이터 변형

데이터를 변형하는 방법을 알아보겠습니다.


df['Age'] = df['Age'] * 2  # Age 열의 값 두 배로 변환
print(df)

7. 실습 예제: 영화 데이터 분석

영화 데이터를 분석하는 실습 예제를 통해 배운 내용을 적용해보겠습니다.


  1. 데이터 불러오기:

import pandas as pd

df = pd.read_csv('movies.csv')
print(df.head())

  1. 데이터 탐색:

print(df.info())
print(df.describe())

  1. 특정 열 선택 및 필터링:

print(df['Title'])  # Title 열 선택
filtered_df = df[df['Genre'] == 'Action']
print(filtered_df)

  1. 데이터 그룹화 및 집계:

grouped_df = df.groupby('Genre').mean()
print(grouped_df)

  1. 데이터 정렬:

sorted_df = df.sort_values(by='Rating', ascending=False)
print(sorted_df.head())

8. 결론

Pandas는 데이터 조작과 분석에 매우 강력한 도구입니다. Pandas를 사용하면 다양한 형태의 데이터를 효율적으로 처리하고 분석할 수 있습니다. 이번 포스팅에서는 Pandas의 기본 개념과 주요 기능을 살펴보았으며, 실습 예제를 통해 실제 데이터를 분석하는 방법을 배워보았습니다. Pandas를 잘 활용하면 데이터 분석 작업을 더욱 쉽게 수행할 수 있습니다.

다음 이전