728x90
Github Link
06-1 데이터 전처리
데이터 전처리 (Data preprocessing)
- 분석에 적합하게 데이터를 가공하는 작업
06-2 조건에 맞는 데이터만 추출하기
# 'score'가 80 이상인 데이터 추출
df.query('score >= 80')
06-3 필요한 변수만 추출하기
# 'score' 변수 추출
df['score']
# 'score', 'id' 변수 추출
df[['score', 'id']
# 'score' 변수 제거
df.drop(columns = 'score')
# 'score', 'id' 변수 제거
df.drop(columns = ['score', 'id'])
06-4 순서대로 정렬하기
# 'score' 오름차순 정렬
df.sort_values('score')
# 'score' 내림차순 정렬
df.sort_values('score', ascending = False)
# 'score' 내림차순, 'id' 오름차순 정렬
df.sort_values(['score', 'id'], ascending = [False, True])
06-5 파생변수 추가하기
# 'total' 파생변수 추가
df.assign(total = df['math'] + df['english'])
# 'total', 'mean' 파생변수 추가
df.assign(total = lambda x: x['math'] + df['english'],
mean = lambda x: x['total'] / 2)
- lambda를 이용하여 데이터 프레임명 대신 약어 입력 가능
- 앞에서 만든 파생변수를 이용해 다시 파생변수를 만들 때에는 반드시 lambda를 이용해 데이터 프레임명을 약어로 입력해야 함
06-6 집단별로 요약하기
# 데이터를 'class'별로 분류
df.groupby('class')
# 데이터의 'score' 항목 평균 구하기
df.agg(mean_score = ('score', 'mean'))
대표적인 요약 통계량 함수
- sum()
- mean()
- std()
- median()
- min()
- max()
- count()
06-7 데이터 합치기
# 데이터 가로로 합치기
# 'id' 항목을 기준으로 'df1'으로 결합
pd.merge('df1', 'df2', how = 'left', on = 'id')
# 데이터 세로로 합치기
# 두 데이터 프레임의 변수명이 같아야 사용 가능
pd.concat(['df1', 'df2'])
728x90
반응형