본문 바로가기
Database & Bigdata/공공 빅데이터 청년 인턴십

[ DAY 17 ] 표준분석모델실습 - 민원분야

by jionee 2020. 9. 15.
SMALL

[ 분석 프로세스 ]

 

 

[ 분석 프로세스 - EDA ]

탐색적 데이터 분석 (EDA : Exploratory Data Analysis)

- 수집된 데이터로 부터 충분한 정보를 얻어내는 일련의 방법

- 요약(최소값, 중앙값, 최대값, 평균, 표준편차)와 그래프(Plot, Graph)등을 이용해 데이터를 시각화하고 유의미한 인사이트를 도출

- 본 민원 표준분석 모델에서는 그래프(Graph)와 워드클라우드(WordCloud)를 활용해 EDA 수행

 

 

[ 분석 프로세스 - SNA ]

사회 연결망 분석 (SNA : Social Network Data Analysis)

- 개인과 집단의 관계를 노드와 링크로 모델링해 관계성을 분석하는 방법

- 노드는 분석 대상을 의미하며, 노드 사이에 존재하는 선은 링크로 링크의 개수는 밀도 혹은 Degree로 표현

- 중심성 측정방법

  • 연결정도 측정법 : 한 노드에 직접적으로 연결된 링크들의 합(Degree)

  • 근접 중심성  :  한 노드로부터 다른 노드에 도달하기까지 필요한 최소 단계의 합

  • 매개 중심성 : 네트워크 내에서 한 점이 담당하는 매개자 혹은 중재자 역할의 정도

  • 위세 중심성 : 연결된 노드의 중요성에 가중치를 둬 노드의 중심성을 측정

 

 

[ 분석 프로세스 - 연관성 분석 ]

연관성 분석(Association Analysis)

- 키워드 간 관련성을 파악해 둘 이상의 항목들로 구성된 연관성 규칙을 찾아내는 분석기법으로 장바구니 분석이라고도 명칭함

- 지지도(Support), 신뢰도(Cofidence), 향상도(Lift)에 의한 주요 결합 단어군을 추출

  • 지지도(Support) : 좌측 단어와 우측 단어가 동시에 나타날 확률

  • 신뢰도(Confidence) : 좌측 단어를 포함하는 민원에서 우측 단어도 나타날확률

  • 향상도(Lift) : 1일 경우 두 단어는 독립적, 1보다 크면 양의 상관관계, 1보다 작으면 음의 상관관계를 나타냄

 

[ 분석 프로세스 - 토픽 분석 ]

토픽 분석(Topic Analysis)

- 단어가 모여 토픽을 형성하고, 토픽이 모여 문서를 형성할 때 해당 문서가 나타내는 주제를 알기 위해 주제 내에서 등장하는 단어를 분석하는 기법

- 민원 분석에서는 어떤 민원이 주차에 관련된 민원이며, 어떤 민원이 아파트와 관련된 민원인지, 그 주제를 표현하는데 있어 어떤 키워드들이 노출되는지를 추론할 수 있음

- 잠재 디르클레 할당(LDA, Latent Dirichelt Allocation) 기법을 활용해 분석

  • 단어 수의 분포를 분석함으로써 해당 문서가 어떤 주제를 다루고 있는지 예상하는 기법

  • 우도(likelihood) : 결과값에 따른 여러 가능한 가설들을 평가하는 측도로써 우도가 최대가 되는 토픽 수 결정 필요 

 

 

[ 실습 ]

 

- 민원요약정보 확인

 

 

- 주소 컬럼을 시군구로 변경하고 빈테이블에 삽입

 

 

 

- 빈테이블에서 값변경 (시,군,구에 미 등 록을 선택하고 적용)

 

 

 

- 원본 데이터(data파일)와 가공된 데이터(값변경)를 데이터 병합

원본데이터에 시군구 데이터가 병합됨

 

 

 

- 자료요약으로 병합된 데이터의 결측치 확인

 

 

 

- 병합된 데이터이 결측치 처리

시,군,구 데이터의 결측치를 row삭제로 설정하고 적용

 

 

 

 

- 결측치 처리한 데이터의 자료요약 & 시 컬럼 자료분포 확인

 

 

 

- 결측치 처리한 데이터 필터링 (전라북도 필터 생성)

필터린 완료된 데이터

 

 

- 필터링 완료된 데이터 파생변수 생성 (민원내용길이 변수)

민원내용길이 변수 생성 확인

 

 

 

- 민원내용길이 변수 생성한 파일 필터링

민원내용길이가 15자 이상인 데이터 필터링

필터링 확인

 

 

 

- 민원내용길이가 필터링 완료된 데이터의 컬럼 변경

No 15 컬럼 동은 민원인주소_법정동으로 변경

 

변경된 컬럼

 

 

- 컬럼변경한 데이터 샘플링

비복원 추출, 추출개수 1000개

 

샘플링 개수 확인

 

 

 

- 샘플링 완료된 데이터에 파생변수 생성(순번 변수)

 

 

 

- 순번 파생변수 생성후 컬럼 변경

csv 파일로 저장

 

- 전처리 워크플로우

 

 

 

- 전처리 완료된데이터를 불러와 그룹연산

민원등록일 기준으로 그룹 생성

 

그룹확인 및 결측치 확인 

 

 

- 그룹 생성한 데이터에 결측치 처리

결측 데이터 row 삭제 처리

 

결측치 처리 데이터 확인

 

 

- 결측치 처리한 데이터 라인 그래프 생성

x축 민원등록일, y 축 count_민원등록일로 막대그래프 생성

 

 

 

- 전처리 데이터로 돌아가 파생변수 생성 (년도,월,요일,년월 변수)

년도 변수 생성

 

월 변수 생성

 

요일 변수 생성

 

년월 변수 생성

 

변수 생성 확인

 

 

- 변수 생성한 데이터에 그룹 연산 적용 (년월)

 

- 그룹 연산한 데이터로 막대그래프 생성 (년월)

 

 

- 변수 생성한 데이터에 그룹 연산 적용 (년)

결측치 발생

 

 

- 년도 그룹연산된 데이터에 결측치 처리

결측 데이터 row 삭제

 

 

- 결측치 처리된 년도 그룹연산 데이터로 막대 그래프 생성 

 

 

- 월별,요일별 그룹연산 적용 후 결측치 처리해 막대그래프로 생성

월별 발생민원 건수 그래프

 

요일별 발생민원 건수 그래프

 

 

- 파생변수 생성한 데이터로 돌아가 그룹 생성 (진행상태)

 

- 그룹 생성 후 파이차트로 시각화

 

 

 

 

- 전처리데이터로 돌아가 파생변수 생성(답변기간)

민원답변일과 민원등록일의 차를 구해 답변기간 변수 생성

 

 

- 답변기간 변수 생성 데이터에 그룹 연산(처리부서별 답변기간)

처리부서별 답변기간의 평균(mean), 합(sum), 최소값(min), 최대값(max)

 

 

 

 

- 그룹 연산한 데이터에 값 변경 ( 처리부서에 있는 날짜 없애기 )

대상값에서 날짜들을 선택해 적용한 결과 

 

 

 

- 값 변경한 데이터에 결측치 처리

처리부서가 결측치면 row 삭제한 결과

 

 

- 결측치 처리한 데이터를 소팅

최대답변기간의 내림차순으로 정렬

 

 

 

- 워크플로우

 

 

 

- 새 워크플로우를 생성해 민원데이터 원본을 불러오고 파생변수 생성(년월)

 

 

- 파생변수 생성한 데이터에 필터링 (2018년 4월 데이터)

csv파일 다운로드

 

 

- 필터링한 데이터에 자료요약

 

 

- 필터링한 자료 CSV 파일에서 민원내용을 복사해 메모장에 저장

txt파일로 저장

 

 

- txt파일을 데이터파일로 불러와 워드클라우드로 시각화

댓글