pip install pandas
DataFrame 객체는 행과 열로 이루어진 2차원 데이터를 다루기 위한 객체입니다. 열은 각각의 변수를 나타내고, 행은 각각의 관측치를 나타냅니다. DataFrame 객체는 여러 가지 방법으로 생성할 수 있습니다.
# 리스트를 사용하여 DataFrame 객체 생성하기
import pandas as pd
data = [['A', 1], ['B', 2], ['C', 3]]
df = pd.DataFrame(data, columns=['col1', 'col2'])
print(df)
# 출력 결과
# col1 col2
# 0 A 1
# 1 B 2
# 2 C 3
# 딕셔너리를 사용하여 DataFrame 객체 생성하기
data = {'col1': ['A', 'B', 'C'], 'col2': [1, 2, 3]}
df = pd.DataFrame(data)
print(df)
# 출력 결과
# col1 col2
# 0 A 1
# 1 B 2
# 2 C 3
# CSV 파일을 사용하여 DataFrame 객체 생성하기
df = pd.read_csv('data.csv')
print(df)
Series 객체는 인덱스와 값으로 이루어진 1차원 데이터를 다루기 위한 객체입니다. Series 객체는 DataFrame 객체에서 열을 선택하여 추출할 수 있습니다.
# 리스트를 사용하여 Series 객체 생성하기
import pandas as pd
data = [1, 2, 3]
s = pd.Series(data, index=['a', 'b', 'c'])
print(s)
# 출력 결과
# a 1
# b 2
# c 3
# dtype: int64
# 딕셔너리를 사용하여 Series 객체 생성하기
data = {'a': 1, 'b': 2, 'c': 3}
s = pd.Series(data)
print(s)
# 출력 결과
# a 1
# b 2
# c 3
# dtype: int64
판다스에서는 다양한 형태의 데이터를 불러올 수 있습니다. 대표적인 데이터 형식으로는 CSV, Excel, SQL 등이 있습니다.
CSV 파일 불러오기
import pandas as pd
# CSV 파일 불러오기
df = pd.read_csv('data.csv')
Excel 파일 불러오기
import pandas as pd
# Excel 파일 불러오기
df = pd.read_excel('data.xlsx')
데이터를 불러온 후에는 데이터의 구조와 내용을 살펴볼 필요가 있습니다. 판다스에서는 다음과 같은 함수를 이용하여 데이터를 살펴볼 수 있습니다.
데이터프레임 정보 확인하기
info() 함수는 데이터프레임의 정보를 출력합니다. 데이터프레임의 크기, 데이터 타입, 결측치 등의 정보를 확인할 수 있습니다.# 데이터프레임 정보 확인하기
df.info()
데이터프레임 일부 데이터 보기
head() 함수는 데이터프레임의 첫 n행을 출력합니다. n은 인자로 전달될 수 있습니다. 기본값은 5입니다.# 데이터프레임 일부 데이터 보기
df.head()
데이터프레임 요약 통계량 보기
describe() 함수는 데이터프레임의 요약 통계량을 출력합니다. 각 열의 개수, 평균, 표준편차, 최소값, 25% 백분위수, 중앙값, 75% 백분위수, 최대값 등의 정보를 확인할 수 있습니다.# 데이터프레임 요약 통계량 보기
df.describe()
데이터프레임에서는 특정한 열이나 행을 선택하여 데이터를 조회할 수 있습니다.
열 선택하기
# 열 선택하기
df['열 이름']
여러 개의 열을 선택할 때는 리스트 형태로 열 이름을 전달합니다.
# 여러 개의 열 선택하기
df[['열 이름 1', '열 이름 2', ...]]
행 선택하기
loc[] 함수를 사용합니다. loc[] 함수는 행의 이름 또는 인덱스를 사용하여 행을 선택합니다.# 행 선택하기
df.loc[행 이름 또는 인덱스]
여러 개의 행을 선택할 때는 리스트 형태로 행 이름 또는 인덱스를 전달합니다.
# 여러 개의 행 선택하기
df.loc[[행 이름 또는 인덱스 1, 행 이름 또는 인덱스 2, ...]]
데이터프레임에서는 특정한 조건을 만족하는 데이터만 선택하여 조회할 수 있습니다.
조건 필터링하기
# 조건 필터링하기
df[조건식]
예를 들어, 2010년 이후의 데이터만 선택하고 싶을 때는 다음과 같이 작성할 수 있습니다.
# 2010년 이후의 데이터만 선택하기
df[df['Year'] >= 2010]
논리 연산자 이용하기
# 논리 연산자 이용하기
df[(조건식 1) & (조건식 2)]
df[(조건식 1) | (조건식 2)]
예를 들어, 2010년 이후이면서 금메달 이상을 획득한 데이터만 선택하고 싶을 때는 다음과 같이 작성할 수 있습니다.
# 2010년 이후이면서 금메달 이상을 획득한 데이터만 선택하기
df[(df['Year'] >= 2010) & (df['Medal'] == 'Gold')]
isin() 함수 이용하기
# isin() 함수 이용하기
df[df['열 이름'].isin([값1, 값2, ...])]
예를 들어, 'KOR', 'USA', 'JPN' 국가의 데이터만 선택하고 싶을 때는 다음과 같이 작성할 수 있습니다.
# 'KOR', 'USA', 'JPN' 국가의 데이터만 선택하기
df[df['NOC'].isin(['KOR', 'USA', 'JPN'])]
데이터프레임에서는 특정한 기준에 따라 데이터를 그룹화하여 처리할 수 있습니다.
groupby() 함수 이용하기
# groupby() 함수 이용하기
df.groupby('열 이름')
groupby() 함수로 그룹화한 데이터는 각 그룹에 대한 정보를 담고 있는 객체입니다. 이를 바탕으로 다양한 처리를 수행할 수 있습니다.
집계 함수 이용하기
# 집계 함수 이용하기
그룹화된 데이터.집계함수()
그룹화된 데이터에 대해 적용할 수 있는 집계 함수는 다양합니다. 일반적으로 사용되는 집계 함수는 다음과 같습니다.

데이터프레임에서는 특정한 열을 기준으로 데이터를 정렬할 수 있습니다. 기본적으로 오름차순으로 정렬되며, 내림차순으로 정렬하려면 ascending=False 옵션을 추가합니다.
# 오름차순으로 정렬하기
df.sort_values('열 이름')
# 내림차순으로 정렬하기
df.sort_values('열 이름', ascending=False)
데이터프레임에서는 reset_index() 함수를 이용하여 인덱스를 초기화할 수 있습니다. 이때 기존 인덱스는 열로 추가됩니다.
# 인덱스 초기화하기
df.reset_index()