빅데이터 분석기사[python]/pandas와 기본 데이터 처리

[python 파이썬, pandas 판다스] 데이터 탐색 (범주형 자료)

sunning 2023. 2. 3. 11:41
728x90
반응형

오늘은 데이터 탐색 방법에 대해 알아보자.

데이터를 탐색하기 이전에 데이터를 열어서 그 기본정보를 먼저 파악하여 어떤 식으로 분석할지 판단한다.

 

● 데이터 기본정보 확인 : df명.info()

이를 활용하면 아래와 같이 데이터의 케이스 수, 컬럼 수, 각 컬럼에서의 변수 개수 및 자료 형태가 나타난다.

 

import pandas as pd

## 데이터 열기
DF = pd.read_csv('BigData_data/Ex_CEOSalary.csv', engine='python')

## 데이터 기본정보 확인
DF.info()

 

● 샘플 데이터 확인 (상위 5개 데이터 확인) : df명.head()

head() 변수를 사용하여 데이터의 상위 5개 데이터를 확인할 수 있다. 눈으로 확인하면 좀 더 자료 구조를 파악하는데 도움이 된다. 괄호 안에 보고싶은 데이터 개수만큼의 숫자를 기입하면 그 만큼의 데이터를 확인할 수 있다.

 

DF.head()

 

이 데이터는 sales와 roe이 salary에 미치는 영향관계를 나타내므로, 독립변수는 sales, roe이고 종속변수는 salary이다.

 

범주형 변수의 빈도 파악하기 : df명.value_counts()

industry는 산업유형을 나타내는 범주형 변수(categorical variable)이다. 범주형 변수는 각 변수에 몇 개가 있는지를 파악하면 아래와 같다. value_counts()변수는 각 변수가 몇 개인지 범주별 빈도를 파악하기에 용이하다. 산업유형이 1인 데이터는 72개, 3 유형은 60개, 2 유형은 46, 4 유형은 31개인 걸 알 수 있다.

 

DF['industry'].value_counts()

 

 

● 특정 값을 다른 값으로 변경하기 : df명['컬럼명'] = df명['컬럼명'].replace([기존 값], [변경하려는 값])

 

이때, 범주를 단순히 1, 2, 3, 4로 나누는 것보다는 각 범주의 이름을 지정해주는 것이 알아보기 쉬울 것이다.

replace 함수를 이용하여 1, 2, 3, 4를 각각 서비스, IT, 금융, 기타의 라벨로 변경해보자.

 

DF['industry'] = DF['industry'].replace([1,2,3,4], ['서비스', 'IT', '금융', '기타'])
DF['industry'].value_counts()

 

 

● 범주형 데이터 - 파악하기 쉽게 시각화하기 (원도표 / 막대 그래프로 범주형 데이터의 빈도수 표현)

 

파이썬에서 시각화를 하기 위해선 대부분 matplotlib이라는 패키지를 이용한다.

이때, 앞서 범주 라벨을 한글로 설정했기 때문에 그냥 그래프를 그리면 한글이 네모 박스로 깨질 것이다.

이러한 문제점은  아래와 같이 글꼴을 맑은 고딕으로 설정해주면 해결된다.

 

plt.rc('font', family='NanumGothic')

 

그리고 그래프를 그려주려면 앞서 범주형 변수 빈도수를 확인했던 코드 끝에 .plot을 붙여주면 된다. 이때 kind를 pie로 설정하면 파이 그래프, bar로 설정하면 막대 그래프로 표현할 수 있다.

import matplotlib.pyplot as plt
plt.rc('font', family='NanumGothic') ## 한글 깨짐 방지

DF['industry'].value_counts().plot(kind = 'pie') ## 원 차트(파이차트)

 

 

DF['industry'].value_counts().plot(kind = 'bar') ## 막대 그래프

 

728x90
반응형