Q&A
HOME >> 커뮤니티 >> Q&A

5분이면 뚝딱 만드는 워드클라우드 글자=>이미지

페이지 정보

작성자 Victoria 작성일24-11-21 15:54 조회16회 댓글0건

본문

부트캠프 워드클라우드 때 받은 데이터로 조금 더 분석해보는 개인 프로젝트.​실력은 왕초보이지만,텍스트로 된 리뷰데이터를 분석해보고 싶은 마음이 컸다.그래서 구글링해가며 도전해본 '텍스트 마이닝'SQL로 기본적인 댓글 전처리 후, 파이썬으로 작업했다.​​SQL로 리뷰 텍스트 합치기내가 아는 지식만으로 텍스트 마이닝을 하려면 행마다 분리되어 있는 리뷰데이터를 하나로 합치는 작업이 필요했다.그래서 가장 익숙한 툴인 워드클라우드 SQL로 GROUP_CONCAT 함수를 활용해 하나의 셀 안에 나오도록 합쳐줬다.처음 했을 때 텍스트 전체가 나오지 않고 중간에서 짤리길래 구글링해보니 한도 글자수를 늘려주면 되었다.데이터 뽑고 나서는 해당 셀 복사해서 메모장에 붙여넣어 txt로 저장해주었다.​​2. 파이썬으로 워드클라우드 생성​A. txt 파일 불러오기파이썬에서 가장 먼저 할 일은 당연하게도 파일불러오기.텍스트 파일 워드클라우드 경로 설정하고 불러오기 해주면 된다.​B. konlpy 설치구글에 '파이썬 한글 텍스트 분석'이라고 검색하면 konlpy 함수를 사용해야한다고 나온다.이게 한글의 형태소를 자동으로 분석해주는 함수인데, 처음에 이거 한다고 3시간이나 애를 먹었다 ^^;​같은 함수를 사용하는건 맞지만,파일 종류도 다르고, 원하는 결과물도 제각각이라내 지식 수준으로도 이해할 수 있으면서, 비슷한 결과물을 낼 워드클라우드 수 있는 블로그를 엄청 찾아다녔다.그 결과 아주 최적의, 쉽고 핵심만 잘 정리되어있는 블로그를 찾았다.01 크롤링 데이터 전처리 이전에 웹 스크래핑(1)에서 만들었던 엑셀파일을 대상으로 분석을 하겠습니다. import numpy as np import pandas as pd df =pd.read_excel('result_220202_1834.xlsx') df.head(3) Article속성에 해당하는 기사의 본문 내용을 리스트로 만들어 줍니다. 워드클라우드 그리고 join함수로 리스트를 하나의 문자열로 만들고 1000번째 자리의 문자까지만 남깁니다. articles 㷟['Article'].tolist() print(len(articles...바로 이곳!올려주신 코드에서 파일명이랑 경로 같은 것만 조금씩 수정해서 진행했다.(감사합니다 꾸벅)>&gt먼저 konlpy랑 자바 설치해주고 (여기서 컴에 자바 설치 안되어 있으면 오류 난다. 꼭 자바 설치하고 할 것!)​>&gt위에서 읽긴 했지만 다시 한번 더 워드클라우드 읽고 'df'로 경로 재설정 해주고, Okt 모듈 import 해줬다.​>&gt다음은 pos함수로 형태소를 나눠준다.결과값은 ('세트', 'Noun'), ('예쁘다', 'Adjective'), (',', 'Punctuation') 요런 튜플로 나온다. 신기해 완전..​>&gt블로그에 올라와있던 코드 del_list에 내가 조금 더 추가해서 불용어를 삭제해줬다.사실 요 부분은 이상하게 끊겨 표현된 동사 여러개, 네이버페이 구매 리뷰에만 있는 phrase들을 워드클라우드 일일히 지워줬다. (초보자 한계ㅠ)​>&gt다음은 단어들을 딕셔너리로 만들기. 블로그에 나와있는 코드 그대로 썼었는데 자꾸 오류가 나서 ChatGPT한테 물어봐서 해결했다. 아마 코드 숫자를 메기는 과정에서 오류가 난 듯 싶다. 지피티 없음 코딩 못해 ㅠ{'생각': 162, '괜찮다': 82, '디자인': 735, '이쁘다': 562, '깔끔하다': 95 ... } 이런식의 워드클라우드 결과를 얻을 수 있다.​>&gt마지막은 워드클라우드 만들기.한글 텍스트는 폰트경로 설정 안하면 깨지기 때문에, 꼭 경로 설정해주고원하는 폰트 갯수, 사이즈, 컬러칩으로 만들어주면 된다.​​워드클라우드 결과결과물로 기존에 했던 분석에 대한 명확한 근거를 댈 수 있게 되어 의미있는 시간이었다.전체적인 데이터 분석 프로젝트에 대한 회고는 다음 포스팅에 올려야겠다. ㅎㅎ

댓글목록

등록된 댓글이 없습니다.

상호명 신성사 | 대표자 박한규 | 사업자등록번호 106-50-64457 | TEL 02-713 –3691 | FAX 02 - 716 - 8564 | ADD 서울특별시 용산구 원효로58길 17 나우빌딩 2층 | E-mail help@sscom.co.kr

Copyrightsⓒ2016 신성사 All rights reserved.