본문 바로가기
코딩/Python

[KT AICE] 데이터 전처리 - 결측치처리

by JuBro 2024. 8. 29.
데이터 탐색하기
함수 설명 예시
head() 데이터프레임의 처음 몇 줄을 반환합니다. 기본적으로 처음 5줄을 반환합니다. df.head()
Name Age Score 0 Alice 24 85 1 Bob 30 90 2 Charlie 22 88 3 David 35 95 4 Eve 29 92
tail() 데이터프레임의 마지막 몇 줄을 반환합니다. 기본적으로 마지막 5줄을 반환합니다. df.tail()
Name Age Score 5 Frank 33 84 6 Grace 28 89 7 Helen 26 87 8 Ian 32 93 9 Jack 31 91
info() 데이터프레임의 요약 정보를 제공하며, 각 열의 데이터 타입과 null이 아닌 값들의 개수를 포함합니다. df.info()
describe() 숫자형 열에 대한 기술 통계를 생성합니다. 예를 들어 개수, 평균, 표준편차, 최소값, 최대값 등을 제공합니다. df.describe()
Age Score count 10.000000 10.000000 mean 29.000000 89.400000 std 3.741657 3.312099 min 22.000000 84.000000 25% 26.250000 87.250000 50% 29.000000 90.000000 75% 31.750000 92.000000 max 35.000000 95.000000
shape 데이터프레임의 크기를 튜플 형태로 반환합니다. (행의 수, 열의 수) df.shape
(10, 3)
index 데이터프레임의 인덱스(행 라벨)를 반환합니다. df.index
RangeIndex(start=0, stop=10, step=1)
loc[[1, 3, 5]] 라벨을 사용하여 1, 3, 5번째 행을 선택합니다. df.loc[[1, 3, 5]]
Name Age Score 1 Bob 30 90 3 David 35 95 5 Frank 33 84
iloc[[1, 3, 5]] 인덱스를 사용하여 1, 3, 5번째 행을 선택합니다. df.iloc[[1, 3, 5]]
Name Age Score 1 Bob 30 90 3 David 35 95 5 Frank 33 84
sum() 각 열에 대한 값의 합을 반환합니다. df.sum()
Name AliceBobCharlieDavidEveFrankGraceHelenIanJack Age 290 Score 894
mean() 각 열에 대한 값의 평균을 반환합니다. df.mean()
Age 29.0 Score 89.4

 

 

 

 

 

 

데이터 타입 변경하기
함수 설명 예시
astype() 데이터프레임의 열 데이터 타입을 지정한 타입으로 변환합니다. df['Age'].astype(float)
0 24.0 1 30.0 2 22.0 3 35.0 4 29.0 5 33.0 6 28.0 7 26.0 8 32.0 9 31.0 Name: Age, dtype: float64

 

 

 

 

결측치

missing value로 데이터에 값이 없는 것을 의미.

 

  • NA: 통계적 연산에서 값이 없음을 나타내며, 주로 R에서 사용됩니다.
  • Null: 데이터베이스나 프로그래밍에서 값이 존재하지 않음을 의미합니다.
  • NaN: 수치 데이터에서 숫자가 아닌 상태를 나타내며, 주로 계산 중 오류로 발생합니다.

 

 

 

 

 

결측치 처리하기
함수 설명 예시
isnull() 데이터프레임에서 결측치(NaN) 값을 확인하며, 결측치가 있는 위치에 True를 반환합니다. df.isnull()
Name Age Score 0 False False False 1 False False False 2 False False False 3 False False False 4 False False False
fillna() 결측치(NaN)를 지정된 값으로 대체합니다. df.fillna(0)
Name Age Score 0 Alice 24 85 1 Bob 30 90 2 Charlie 22 88 3 David 35 95 4 Eve 29 92
dropna() 결측치(NaN)가 포함된 행이나 열을 삭제합니다. 기본적으로 결측치가 있는 모든 행을 삭제합니다. df.dropna()
Name Age Score 0 Alice 24 85 1 Bob 30 90 2 Charlie 22 88 3 David 35 95 4 Eve 29 92