초보자를 위한 Pandas 소개

Pandas는 가장 인기 있고 강력한 Python용 데이터 분석 라이브러리 중 하나입니다. 사용하기 쉬운 데이터 구조와 구조화된 데이터 작업을 위한 도구를 제공합니다. 이 글에서는 데이터 분석에 Pandas를 사용하는 방법에 대한 실용적인 소개를 살펴보겠습니다.

Pandas 가져오기

Pandas를 사용하려면 먼저 Pandas를 가져와야 합니다.

1
import pandas as pd

일반적으로 pd를 약어로 사용하여 Pandas를 가져오는 것이 일반적입니다.

Pandas DataFrame 만들기

Pandas DataFrame은 다양한 데이터 유형(string, number, boolean 등)을 열에 저장할 수 있는 2차원 레이블이 지정된 데이터 구조입니다. 스프레드시트나 SQL 테이블과 비슷합니다.

dictionary에서 간단한 DataFrame을 만들어 보겠습니다.

1
2
3
data = {'Name': ['John', 'Mary', 'Peter', 'Jeff', 'Bill'],
'Age': [28, 32, 47, 19, 55],
'Gender': ['Male', 'Female', 'Male', 'Male', 'Male']
1
2
df = pd.DataFrame(data)
print(df)
1
2
3
4
5
6
  Name  Age  Gender
0 John 28 Male
1 Mary 32 Female
2 Peter 47 Male
3 Jeff 19 Male
4 Bill 55 Male

dictionary 키는 열 이름이 되고 값은 열의 데이터가 됩니다.

열 선택하기

dictionary 키와 같은 열 이름을 사용하여 Pandas에서 열을 선택할 수 있습니다.

1
2
ages = df['Age']
print(ages)
1
2
3
4
5
6
0    28
1 32
2 47
3 19
4 55
Name: Age, dtype: int64

그러면 ‘Age’ 열 데이터만 포함된 Pandas Series가 반환됩니다.

Pandas Series는 인덱싱된 데이터의 1 차원 배열입니다.

행 선택하기

integer 위치 또는 boolean 인덱싱을 통해 행을 선택할 수 있습니다. 처음 3개 행을 구해 보겠습니다.

1
print(df[0:3])
1
2
3
4
  Name  Age  Gender
0 John 28 Male
1 Mary 32 Female
2 Peter 47 Male

그리고 'Age’가 30보다 큰 행은 다음과 같습니다.

1
print(df[df['Age'] > 30])
1
2
3
4
  Name  Age  Gender
1 Mary 32 Female
2 Peter 47 Male
4 Bill 55 Male

CSV에서 데이터 로드하기

read_csv()를 사용하여 CSV 파일에서 DataFrame으로 데이터를 쉽게 로드할 수 있습니다.

1
df = pd.read_csv('data.csv')

그러면 ‘data.csv’ 파일이 Pandas DataFrame에 로드됩니다. 날짜 구문 분석 및 누락된 값 처리와 같은 많은 추가 옵션을 지정할 수 있습니다.

기본 데이터 정리

Pandas를 사용하면 누락된 데이터를 쉽게 제거하고 지저분한 데이터를 정리할 수 있습니다.

1
2
3
4
5
6
7
8
# 누락된 값이 있는 행 삭제
df.dropna()

# 누락된 값 채우기
df.fillna(value)

# 열 이름 변경
df.rename(columns={'old_name': 'new_ name'})

유용한 연산

Pandas에는 데이터 정리를 빠르게 해주는 많은 벡터화된 기능이 포함되어 있습니다.

1
2
3
4
5
6
7
8
9
10
11
# Age 열의 합계 계산
df['Age'].sum()

# Age 열의 평균 계산
df['Age'].mean()

# Age 열의 최대값 얻기
df['Age'].max()

# Age 열을 기준으로 정렬
df.sort_values('Age')

데이터를 집계, 분할, 변환, 결합, 시각화하기 위한 더 많은 함수가 있습니다.

결론

지금까지 Python에서 실제 데이터 분석을 위해 Pandas를 사용하는 몇 가지 기본 사항을 다루었습니다. 핵심 내용은 다음과 같습니다.

  • 표 형식 데이터 저장을 위한 DataFrame
  • CSV 파일에서 데이터 읽기/쓰기
  • 열 선택, 행 슬라이싱, boolean 인덱싱
  • 데이터 정리, 병합, 변환을 위한 내장 메서드 제공
  • 빠른 데이터 분석을 위한 벡터화된 연산

Pandas는 사용 편의성과 성능을 결합하여 데이터 과학 워크플로우에 없어서는 안 될 필수 요소입니다.

Share