본문 바로가기

카테고리 없음

[삼성 SDS Brightics #11 브라이틱스로 Kaggle 데이터 분석하기 - 팀분석프로젝트편 2탄]

 

안녕하세요~

지난주에 소개한 팀 분석 프로젝트에 이어

오늘은 조금 더 자세한 분석 과정에 대해 소개해 드리려고 합니다~

 

2탄을 안 보고 오신 분들은 아래 링크 클릭해주세용!

 

https://blog.naver.com/hasong0131/222464767578

 

이번 주는 모델링에 필요한 값/변수로

추려보고자 EDA를 해보았습니다.

 

우선 지난주와 달라진 점은

train.csv와 people.csv를

'Join' 함수를 이용해 합쳤다는 점입니다.

 

한 개의 파일로 합쳐서 그 뒤에 함수를 넣으면

각 파일별로 함수를 따로 써야 하는 번거로움을 덜 수가 있습니다.

 

 

이렇게 두 데이터를 Join 함수에 연결시키면

아래와 같은 화면이 뜹니다.

 

 

 

이렇게 join 을 한다음,

오른쪽에 뜨는 출력부의 그래프를 이용하여

EDA를 진행해보았습니다.

 

 

우선 테이블로 되어있는 데이터를 처음 봤을 때

조금 의아했던 점은,

나머지 변수는 다 char (characteristics) 인데,

한 개만 group_1이라고 되어있었던 점입니다.

데이터들이 마스킹 되어 실제 group이 뭘 의미하는진 모르겠지만,

비슷한 characteristics 을 가진 그룹끼리 묶은 것으로 예상해보겠습니다.

 

오른쪽 출력부의 "100% stacked column"이라는 옵션이 있는데

우측에 있는 필터 옵션을 사용해서

x축은 group_1, y 축은 people_id, stacked by outcome으로

설정해 주었습니다.

 

 

그 결과를 보면 group 12731, 1303,1323,14879 등

여러 그룹들이 100% 빨간 바 차트로만 이루어진 걸 볼 수 있는데요,

 

이 group_1변수는 people.csv에 있었던 파일이지만

outcome 은 activity 파일에 있던 변수라,

빨간색 바차트로 이루어진 그룹은

outcome 이 0만 나오게 행동 (activity) 하는 그룹,

즉 레드햇에게 비즈니스적 가치가 없는 그룹들이라고

볼 수 있습니다.

group_1 말고 또 다른 변수는 characteristics인데요,

이건 사용자의 특이점입니다 (성별/나이/등등..?!)

 

characteristics는 activity train set에 10개

people 파일에 38개가 있는데요,

 

people set: characteristic 1~9는 type으로

이루어져 있고 10~37이 true / false

train set: characteristic 1~10 다 type

 

type은

예를 들어 레드햇의 기업용 오픈소스를 무료체험했는데

subscription까지 이어진 유형을

한 그룹에 묶어

뒀다고 생각하면 될 것 같아요.

 

characteristic 변수들도 아까랑 같은

"100% stacked column" 방법으로

그래프를 그려봤습니다.

 

 

char_1에 있는 type 8,10,16,23,24,36,값들은

항상 outcome 이 0 으로 나오네요.

 

 

char_2에 있는 type 10, 11, 16, 25, 26 값들은

항상 outcome 이 0으로 나옵니다.

 

이런 식으로 char_10까지 해본 결과,

character마다 type 도 달라서

정확하게 비교해보긴 어렵겠지만

type 10 이 나올 경우

항상 outcome이 100% 0 혹은 100% 1으로 나옵니다.

type 10 은 어떤 characteristics와 만났을 때

yes or no 와 같은 극단적인 activity type이 아닐까 하고

예상해볼 수 있을 것 같네요.

 

 

 

그다음은 'date'변수에서 연도만 추출했는데요,

Datetime Formater 함수를 사용했어요.

 

여기에 나온 date는 아마 contract 만료 기간

혹은 출시된 버전의 만료일 일 것 같아요.

(캐글 데이터가 2016년에 나왔지만 날짜가 2020-2023년까지 있는걸 보아)

 

 

In Format 은 지금 테이블에 있는 날짜의 포맷

Out Format 은 제가 원하는 형식인 yyyy (연도)을 클릭하면

아래 사진과 같이 변합니다.

 

In Format
Out Format

 

아까와 마찬가지로 출력부의 있는

Stacked Column 을 사용해 연도별 사용자 숫자를 보았고,

2022년 연도의 바차트의 반 이상이 파란색인 걸 보아

2020부터 2023까지 비즈니스 가치가 가장 많이 보인 데이터는

2022년이었다는 걸 알 수 있습니다.

사용기간이 2022년까지인 product가

가장 인기 있었을 수도 있겠네용.

 

 

character 38은

변수 중 (outcome제외) 유일한 숫자형 변수입니다.

'Summary Statistics'함수를 사용해서

아래와 같은 정보를 추출했습니다.

 

 

우선 오늘은 이렇게 EDA 하는 과정을 보여드렸는데요,

다음에는 feature engineering 과 모델링 부분을 보여드릴게요!

 

[본 포스팅은 Brightics 서포터즈로서 직접 체험하고 작성한 리뷰입니다.]