Seaborn
`seaborn`은 파이썬의 데이터 시각화 라이브러리이며 이를 기반으로 수려한 그래프를 그릴 수 있다.
%pip install seaborn
import seaborn as sns
#꺾은선 그래프 그리기
sns.lineplot(x=[1, 3, 2, 4], y=[4, 3, 2, 1])
#막대 그래프 그리기
sns.barplot(x=[1,2,3,4],y=[0.7,0.2,0.1,0.05])
plot의 속성
import matplotlib.pyplot as plt
sns.barplot(x=[1,2,3,4],y=[0.7,0.2,0.1,0.05])
plt.title("Bar plot") # 제목 달기
plt.xlabel("X Label") # x축 설명 달기
plt.ylabel("Y Label") # y축 설명 달기
plt.show
plt.figure(figsize=(20,10)) # 그래프 크기 설정
sns.lineplot(x=[1, 3, 2, 4], y=[4, 3, 2, 1])
plt.ylim(2,3) # 그래프 범위 설정
plt.show()
WordCloud
`wordcloud`는 파이썬의 텍스트 클라우드 라이브러리입니다. 이를 기반으로 텍스트 구름을 그릴 수 있다.
`konlpy`는 한국어 형태소 분석기 라이브러리로, 주어진 문장에서 명사 등을 뽑아 내는 데에 사용할 수 있다.
해시코드(https://hashcode.co.kr) 사이트에 올라온 질문들로 워드클라우드를 만들어보는 실습을 진행해보자.
QnA | 프로그래머스 커뮤니티
프로그래머스 QnA는 프로그래밍 문제해결을 위한 QnA서비스입니다. 프로그래밍과 관련해서 개발자들끼리 궁금한건 물어보고 아는건 함께 나눠요. C, Java, Python, Ruby등의 코드를 웹에서 직접 실행
qna.programmers.co.kr
# 시각화에 쓰이는 라이브러리
import matplotlib.pyplot as plt
from wordcloud import WordCloud
# 횟수를 기반으로 딕셔너리 생성
from collections import Counter
# 문장에서 명사를 추출하는 형태소 분석 라이브러리
from konlpy.tag import Hannanum
%pip install bs4
%pip install wordcloud
%pip install konlpy
user_agent = {"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36"}
import time
import requests
from bs4 import BeautifulSoup
questions = []
for i in range(1,11):
res = requests.get(f"https://hashcode.co.kr/?page{i}", {"User_Agent": user_agent})
soup = BeautifulSoup(res.text, "html.parser")
parsed_datas = soup.find_all("li", "question-list-item")
for data in parsed_datas:
questions.append(data.h4.text.strip())
time.sleep(0.5)
questions[:10]
words = []
hannanum = Hannanum()
for question in questions:
nouns = hannanum.nouns(question) #한번 반복할 때 나오는 명사
words+=nouns # 누적해서 나오는 명사
counter = Counter(words)
WordCloud(
font_path = '...', #폰트 경로 붙여넣기
background_color='...', #배경색 설정하기
height = 1000,
width = 1000,
)
img = WordCloud.generate_from_frequencies(counter)
plt.imshow(img)
'AI > 데이터 엔지니어링 데브코스' 카테고리의 다른 글
[3주차-1] 장고를 활용한 API서버 만들기 - 장고 admin, 모델 필터링 (0) | 2023.04.29 |
---|---|
[3주차-1] 장고를 활용한 API서버 만들기 - Django 시작하기 (0) | 2023.04.25 |
[2주차-4] 파이썬으로 웹 다루기 - Selenium (0) | 2023.04.20 |
[2주차-3] 파이썬으로 웹 다루기 - 원하는 요소 가져오기 (0) | 2023.04.19 |
[2주차-2] 파이썬으로 웹 다루기 - HTTP (0) | 2023.04.19 |