문자로 된 데이터에서 가치 있는 정보를 얻어 내는 텍스트 마이닝을 알아보자.
10-1 대통령 연설문 텍스트 마이닝
문자로 된 데이터에서 가치 있는 정보를 얻어 내는 분석 기법을 텍스트 마이닝(text mining)이라고 함. 텍스트 마이닝을 할 때 가장 먼저 하는 작업은 문장을 구성하는 어절들이 어떤 품사인지 파악하는 형태소 분석(morphology analysis)임. 형태소 분석으로 어절의 품사를 파악한 다음 명사, 동사, 형태소 등 의미를 지닌 품사를 추출해 어떤 단어가 얼마나 많이 사용됐는지 확인함. 텍스트 마이닝을 이용해 SNS나 웹 사이트에 올라온 글을 분석하는 사람들이 어떤 이야기를 나누고 있는지 파악할 수 있음.
문재인 대통령의 출마 선언문을 이용해 텍스트 마이닝을 하는 방법을 알아보겠음. 대통령 연설문은 문법 오류가 없는 정제된 문장으로 되어 있어서 전처리 작업을 많이 하지 않아도 되므로 텍스트 마이닝을 익히는 데 매우 적합한 자료임.
[Do it! 실습] KoNLPy 패키지 설치하기
KoNLPy 패키지를 이용하면 한글 텍스트로 형태소 분석을 할 수 있음. KoNLPy 패키지를 설치하겠음.
1. 자바 설치하기
KoNLPy 패키지는 '자바'가 설치되어 있어야 사용할 수 있음. 사용하는 운영 체제에 맞는 설치 파일을 다운로드해 설치함.
1. [윈도우 설정 → 시스템 → 정보 → '장치 사양'의 '시스템 종류']에서 운영 체제 버전을 확인함.
2. 다음 사이트에 접속해 사용하는 운영 체제 버전에 맞는 설치 파일을 다운로드해 설치함.
- https://www.oracle.com/java/technologies/downloads/#jdk20-windows
'플랫폼' 항목에 운영 체제 버전이 표시되어 있음.
64비트는 'Windows x64', 32비트는 비트는 'Windows x86'의 msi 파일을 다운로드하면 됨.
3. [찾기검색 → 시스템 환경 변수 편집 → 환경 변수 → (그림 1)'시스템 변수(S)'의 새로 만들기(W)
→ (그림 2)변수 이름: "JAVA_HOME", 변수 값 : (JAVA를 설치한 경로)
→ (그림 3)'시스템 변수(S)'의 'Path' 편집(I) → '환경 변수 편집'에서 새로 만들기(N): "%JAVA_HOME%" 입력]
2. KoNLPy 의존성 패키지 설치하기
어떤 패키지는 다른 패키지의 기능을 이용하기 때문에 다른 패키지를 먼저 설치해야 작동함. 이처럼 패키지가 의존하고 있는 패키지를 '의존성 패키지'라고 함. 아나콘다 프롬프트에서 KoNLPy의 의존성 패키지인 jpype1을 설치함.
pip install jpype1
3. KoNLPy 설치하기
아나콘다 프롬프트에서 KoNLPy 패키지를 설치함.
pip install konlpy
[Do it! 실습] 가장 많이 사용된 단어 알아보기
텍스트 마이닝을 할 준비를 모두 마쳤음. 이제 문재인 대통령의 대선 출마 선언문을 이용해 텍스트 마이닝을 해보겠음.
1. 연설문 불러오기
문재인 대통령 대선 출마 선언문이 담겨 있는 speech_moon.txt 파일을 워킹 디렉터리에 삽입함. 그런 다음 open()으로 파일을 열고 read()를 이용해 불러옴. open()에 입력한 encoding = 'UTF-8'로 지정하는 기능을 함.
tip) 인코딩(encoding)은 컴퓨터가 문자를 표현하는 방식을 의미함. 문서 파일에 따라 인코딩 방식이 다르기 때문에 문서 파일과 프로그램의 인코딩이 맞지 않으면 문자가 깨지는 문제가 생김.
moon = open('speech_moon.txt', encoding = 'UTF-8').read()
moon
# output: '정권교체 하겠습니다!\n 정치교체 하겠습니다!\n 시대교체 하겠습니다!\n \n ‘불비불명(不飛不鳴)’이라는 고사가 있습니다. 남쪽 언덕 나뭇가지에 앉아, 3년 동안 날지도 울지도 않는 새. 그러나 그 새는 한번 날면 하늘 끝까지 날고, 한번 울면 천지를 뒤흔듭니다.\n\n그 동안 정치와 거리를 둬 왔습니다. 그러나 암울한 시대가 저를 정치로 불러냈습니다. 더 이상 남쪽 나뭇가지에 머무를 수 없었습니다. 이제 저는 국민과 함께 높이 날고 크게 울겠습니다. 오늘 저는 제18대 대통령선거 출마를 국민 앞에 엄숙히 선언합니다. (...생략...)
tip) 문재인 대통령의 출마 선언문 출처: bit.ly/easypy_102
2. 불필요한 문자 제거하기
moon을 출력한 결과를 보면 특수 문자, 한자, 공백 등이 포함되어 있음. 이런 요소는 분석 대상이 아니므로 제거해야 함. 문자 처리 패키지인 re의 sub()을 이용해 한글이 아닌 모든 문자를 공백으로 바꾸겠음.
# 불필요한 문자 제거하기
import re
moon = re.sub('[^가-힣]', ' ', moon)
moon
# output: '정권교체 하겠습니다 정치교체 하겠습니다 시대교체 하겠습니다 불비불명 이라는 고사가 있습니다 남쪽 언덕 나뭇가지에 앉아 년 동안 날지도 울지도 않는 새 그러나 그 새는 한번 날면 하늘 끝까지 날고 한번 울면 천지를 뒤흔듭니다 그 동안 정치와 거리를 둬 왔습니다 그러나 암울한 시대가 저를 정치로 불러냈습니다 더 이상 남쪽 나뭇가지에 머무를 수 없었습니다 이제 저는 국민과 함께 높이 날고 크게 울겠습니다 오늘 저는 제 대 대통령선거 출마를 국민 앞에 엄숙히 선언합니다 (...생략...)
tip) re.sub()에 [^가-힣]은 '한글이 아닌 모든 문자'를 의마하는 정규 표현식(regulae expression)임. 정규 표현식은 특정한 규칙을 가진 문자열을 표현하는 언어임. 이메일 주소, 전화번호처럼 특정한 규칙으로 되어 있는 문자를 찾거나 수정할 때 정규 표현식을 활용함.
3. 명사 추출하기
형태소 중에도 명사를 보면 텍스트가 무엇에 관한 내용인지 파악할 수 있기 때문에 텍스트에서 명사만 추출해 분석할 때가 많음. konlpy.tag.Hannanum()의 nouns()를 이용하면 문장에서 명사를 추출할 수 있음.
# hannanum 만들기
import konlpy
hannanum = konlpy.tag.Hannanum()
# 명사 추출하기
hannanum.nouns("대한민국의 영토는 한반도와 그 부속도서로 한다")
# output: ['대한민국', '영토', '한반도', '부속도서']
연설문에서 명사를 추출하겠음. hannanum.nouns()의 출력 결과는 리스트 자료 구조이므로 다루기 쉽도록 데이터 프레임으로 변환하겠음.
# 연설문에서 명사 추출하기
nouns = hannanum.nouns(moon)
nouns
# output: ['정체교체',
# '정체교체',
# '시대교체',
# '고사',
# (...생략...)
# 데이터 프레임으로 변환
df_world = pd.DataFrame({'word' : nouns})
df_world
4. 단어 빈도표 만들기
단어 빈도표를 만들어 연설문에 어떤 단어를 많이 사용했는지 알아보겠음. 먼저 한 글자로 된 단어는 의미가 없는 경우가 많으므로 제거하겠음. pd.str.len()을 이용해 단어의 글자 수를 나타낸 변수를 추가한 다음 두 글자 이상인 단어만 추출하면 됨.
# 글자 수 추가
df_world['count'] = df_world['word'].str.len()
df_world
# 두 글자 이상 단어만 남기기
df_world = df_world.query('count >= 2')
df_world.sort_values('count')
단어의 사용 빈도를 구하고 빈도 순으로 정렬하겠음. 출력 결과를 보면 연설문은 '나라', '일자리', '국민' 등의 단어를 많이 사용했다는 것을 알 수 있음.
# 단어 빈도 구하기
df_world = df_world.groupby('word', as_index = False) \
.agg(n = ('word', 'count')) \
.sort_values('n', ascending = False)
df_world
5. 단어 빈도 막대 그래프 만들기
연설문에 어떤 단어를 많이 사용했는지 알아보기 쉽도록 자주 사용한 상위 20개 단어를 추출해 막대 그래프를 만들겠음.
# 단어 빈도 상위 20개 추출
top20 = df_world.head(20)
top20
import seaborn as sns
import matplotlib.pyplot as plt
plt.rcParams.update({'font.family' : 'Malgun Gothic', # 한글 폰트
'figure.dpi' : '120', # 해상도
'figure.figsize' : [6.5, 6]}) # 가로 세로 크기
# 막대 그래프 만들기
sns.barplot(data = top20, x = 'n', y = 'word')
tip) macOS 사용자는 'Malgun Gothic' 대신 'AppleGothic'을 입력하면 됨.
출력된 그래프를 보면 단어별 빈도가 잘 드러남. '일자리', '복지국가' 등의 단어를 보면 문재인 대통령이 연설에서 일자리 문제를 해결하고 복지국가를 지향하겠다는 의사를 표현했다는 것을 알 수 있음.
[Do it! 실습] 워드 클라우드 만들기
워드 클라우드(word cloud)는 단어의 빈도를 구름 모양으로 표현한 그래프임. 워드 클라우드를 만들면 단어의 빈도에 따라 글자의 크기와 색깔이 다르게 표현되므로 어떤 단어가 얼마나 많이 사용했는지 한눈에 파악할 수 있음. 연설문에 자주 사용된 단어로 워드 클라우드를 만들어 보겠음.
1. wordcloud 패키지 설치하기
아나콘다 프롬프트에서 wordcloud 패키지를 설치함.
pip install wordcloud
{알아 두면 좋아요} wordcloud 패키지 설치 오류 해결하기
wordcloud 패키지 설치 과정에 다음과 같은 에러 메시지가 출력되면 'Microsoft Visual C++'를 먼저 설치해야 함.
error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft Visual C++ Build Tools" |
1. 다음 사이트에 접속한 다음 위 [Build Tools 다운로드] 버튼을 클릭해 설치 파일을 다운로드함.
bit.ly/easypy_103
2. 설치 파일을 실행함. 설정 화면에서 왼쪽 위 'C++를 사용한 데스트톱 개발'을 체크한 다음 오른쪽 아래 [Install]을 클릭해 설치를 시작함.
3. 설치가 끝나면 아나콘다 프롬프트에서 wordcloud 패키지를 설치함.
2. 한글 폰트 설정하기
워드 클라우드에 한글을 표현하려면 워드 클라우드를 만들 때 한글 폰트를 사용하도록 설정해야 함. 배달의민족 도현체 폰트 파일 DoHyeon-Regular.ttf를 워킹 디렉터리에 삽입한 다음 폰트 경로를 지정함.
font = 'DoHyeon-Regular.ttf'
tip) 윈도우에 설치된 다른 폰트를 이용해 워드 클라우드를 만들 수 있음. [윈도우 설정 → 개인 설정 → 글꼴]에서 글꼴을 선택하고 '메타데이터'의 '글꼴 파일'을 보면 .ttf 확장자의 폰트 파일 경로를 알 수 있음.
3. 단어와 빈도를 담은 딕셔너리 만들기
워드 클라우드는 단어는 키(key), 빈도는 값(value)으로 구성된 딕셔너리 자료 구조를 이용해 만듦. 단어 빈도를 담은 df_word는 데이터 프레임이므로 다음 코드를 이용해 딕셔너리로 변환하겠음.
tip) 딕셔너리는 17-5절에서 자세히 다룸.
# 데이터 프레임을 딕셔너리로 변환
dic_word = df_world.set_index('word').to_dict()['n']
dic_word
# output: {'나라': 19,
# '일자리': 19,
# '국민': 18,
# '우리': 17,
# '대통령': 12,
# (...생략...)
4. 워드 클라우드 만들기
wordcloud 패키지의 WordCloud()를 이용해 워드 클라우드를 만들 때 사용할 wc를 만듦. WordCloud()의 W와 C는 대문자이니 주의하기 바람.
# wc 만들기
from wordcloud import WordCloud
wc = WordCloud(random_state = 1234, # 난수 고정
font_path = font, # 폰트 설정
width = 400, # 가로 크기
height = 400, # 세로 크기
background_color = 'white') # 배경색
wc.generate_from_frequencies()를 이용해 워드 클라우드를 만든 다음 plt.imshow()를 이용해 출력함. 워드 클라우드 이미지를 출력하는 코드는 한 셀에 넣어 함께 실행해야 하니 주의하기 바람.
# 워드 클라우드 만들기
img_wordcloud = wc.generate_from_frequencies(dic_word)
# 워드 클라우드 출력하기
plt.figure(figsize = (10, 10)) # 가로, 세로 크기 설정
plt.axis('off') # 테두리 선 없애기
plt.imshow(img_wordcloud) # 워드 클라우드 출력
WordCloud()는 함수를 실행할 때마다 난수(무작위로 생성한 수)를 이용해 워드 클라우드를 매번 다른 모양으로 만듦. 워드 클라우드를 항상 같은 모양으로 만들려면 random_state를 이용해 난수를 고정해야 하고, wc를 만드는 코드를 먼저 실행한 다음 wc.generate_from_frequencies()를 실행해야 함.
워드 클라우드는 자주 사용된 단어일수록 글자를 크게, 적게 사용된 단어일수록 글자가 작게 표현됨. 출력한 워드 클라우드를 보면 문재인 대통령이 연설에서 무엇을 강조했는지 직관적으로 알 수 있음.
{알아 두면 좋아요} 클래스를 이용해 인스턴스 만들기
앞의 코드를 보면 WordCloud()를 바로 사용하지 않고 먼저 WordCloud()를 이용해 wc를 만들고 wc의 generate_from_frequencies() 메서드를 사용해 워드 클라우드를 만듦.
from wordcloud import WordCloud
wc = WordCloud(random_state = 1234,
font_path = font,
width = 400,
height = 400,
background_color = 'white')
wc.generate_from_frequencies(dic_word)
WordCloud()처럼 '메서드와 어트리뷰트를 가지고 있는 변수'를 만드는 명령어를 클래스(class)라고 함. 그리고 wc처럼 클래스로 만든 변수를 인스턴스(instance)라고 함. 어떤 함수는 바로 사용하는 게 아니라 먼저 클래스를 이용해 인스턴스를 만든 다음 사용해야 함. 명사를 추출할 때 사용한 hannanum도 konlpy.tag.Hannanum 클래스로 만든 인스턴스임.
인스턴스를 만들 때 WordCloud(width = 400, height = 400)처럼 파라미터의 값을 미리 지정해두면 메서드를 여러 번 사용하더라도 파라미터를 반복해서 입력하지 않아도 되어 편리함. 또한 파라미터를 바꿔가며 여러 인스턴스를 만들어두면 기능이 다른 여러 인스턴스를 동시에 사용할 수 있다는 장점이 있음.
[Do it! 실습] 워드 클라우드 모양 바꾸기
WordCloud()의 mask를 이용하면 이미지 파일을 이용해 원하는 모양의 워드 클라우드를 만들 수 있음.
1. mask 만들기
cloud.png는 구름 모양 그림을 담고 있는 이미지 파일임. 이 파일을 이용해 구름 모양으로 워드 클라우드를 만들어 보겠음.
cloud.png를 워킹 디렉터리에 삽입한 다음 PIL 패키지의 Image.open()을 이용해 불러옴.
import PIL
icon = PIL.Image.open('cloud.png')
다음 코드를 실행해 불러온 이미지 파일로 mask를 만듦.
import numpy as np
img = PIL.Image.new('RGB', icon.size, (255, 255, 255))
img.paste(icon, icon)
img = np.array(img)
2. 워드 클라우드 만들기
WordCloud()에 mask = img를 입력해 mask를 활용하도록 설정함.
# wc 만들기
from wordcloud import WordCloud
wc = WordCloud(random_state = 1234, # 난수 고정
font_path = font, # 폰트 설정
width = 400, # 가로 크기
height = 400, # 세로 크기
background_color = 'white', # 배경색
mask = img) # mask 설정
# 워드 클라우드 만들기
img_wordcloud = wc.generate_from_frequencies(dic_word)
# 워드 클라우드 출력하기
plt.figure(figsize = (10, 10)) # 가로, 세로 크기 설정
plt.axis('off') # 테두리 선 없애기
plt.imshow(img_wordcloud) # 워드 클라우드 출력
[Do it! 실습] 워드 클라우드 색깔 바꾸기
컬러맵(colormaps, 색깔 목록)을 이용하면 워드 클라우드의 색깔을 다양하게 바꿀 수 있음. WordCloud()에 colormap = 'inferno'를 입력해 inferno 컬러맵을 적용하도록 설정하겠음.
# wc 만들기
from wordcloud import WordCloud
wc = WordCloud(random_state = 1234, # 난수 고정
font_path = font, # 폰트 설정
width = 400, # 가로 크기
height = 400, # 세로 크기
background_color = 'white', # 배경색
mask = img, # mask 설정
colormap = 'inferno') # 컬러맵 설정
이제 워드 클라우드를 만들면 색깔이 달라짐.
# 워드 클라우드 만들기
img_wordcloud = wc.generate_from_frequencies(dic_word)
# 워드 클라우드 출력하기
plt.figure(figsize = (10, 10)) # 가로, 세로 크기 설정
plt.axis('off') # 테두리 선 없애기
plt.imshow(img_wordcloud) # 워드 클라우드 출력
{알아 두면 좋아요} 다양한 컬러맵 이용하기
그래프를 만들 때 다양한 컬러맵을 이용할 수 있음. 다음 사이트에서 어떤 컬러맵이 있는지 살펴보자.
Choosing Colormaps in Matplotlib: bit.ly/easypy_104
{알아 두면 좋아요} 워드 클라우드는 좋은 그래프인가?
워드 클라우드는 디자인이 아름다워서 자주 사용되지만 분석 결과를 정확하게 표현하는 그래프는 아님. 단어 빈도를 크기와 색으로 표현하므로 '어떤 단어가 몇 번 사용됐는지' 정확히 알 수 없고, 분석 결과를 아름답게 표현하는 게 아니라 정확하게 표현하려면 워드 클라우드보다 막대 그래프를 이용하는 게 좋음.
10-2 기사 댓글 텍스트 마이닝
텍스트 마이닝은 SNS에 올라온 글을 분석해 사람들이 어떤 생각을 하고 있는지 알아보는 목적으로 자주 활용함. 이번에는 2020년 9월 21일 방탄소년단이 '빌보드 핫 100 차트' 1위에 오른 소식을 다룬 네이버 뉴스 기사 댓글을 이용해 텍스트 마이닝을 해보겠음.
[Do it! 실습] 가장 많이 사용된 단어 알아보기
news_comment_BTS.csv파일을 워킹 디렉터리에 삽입한 다음 불러옴.
# 데이터 불러오기
df = pd.read_csv('news_comment_BTS.csv', encoding = 'UTF-8')
# 데이터 살펴보기
df.info()
2. 불필요한 문자 제거하기
댓글이 들어 있는 reply 변수에서 불필요한 문자를 제거하고 한글만 남긴 다음 일부 출력해 내용을 확인하겠음.
10-1절에서 다룬 moon은 txt 파일로 만든 str 타입 변수이므로 한글만 남기는 작업을 할 때 re.sub()을 사용했음. 여기서 분석하는 reply는 데이터 프레임에 담겨 있는 변수이므로 str.replace()를 사용해야 함.
# 불필요한 문자 제거하기
df['reply'] = df['reply'].str.replace('[^가-힣]', ' ', regex = True)
df['reply'].head()
3. 명사 추출하기
이번에는 꼬꼬마(Kkma) 형태소 분석기를 이용해 댓글에서 명사를 추출하겠음. 꼬꼬마 형태소 분석기는 띄어쓰기 오류가 있는 문장에서도 형태소를 잘 추출하는 장점이 있으므로 댓글처럼 정제되지 않은 텍스트를 분석할 때 적합함. Kkma()에서 첫 글자 K는 대문자이므로 주의하기 바람.
# kkma 만들기
import konlpy
kkma = konlpy.tag.Kkma()
10-1절에서 다룬 moon은 문자 타입으로 된 하나의 변수였으므로 hannanum.nouns(moon)처럼 함수에 바로 적용할 수 있었음. 반면 이번 추출할 reply는 데이터 프레임에 들어 있는 변수이므로, kkma.nouns()에 바로 적용할 수 없고, 대신 apply()를 사용해 함수가 각 행의 값을 따로따로 처리하도록 해야 함.
# 명사 추출 –apply() 활용
nouns = df['reply'].apply(kkma.nouns)
nouns
4. 단어 빈도표 만들기
단어가 몇 번씩 사용됐는지 나타낸 빈도표를 만들겠음. 앞에서 만든 nouns는 행마다 여러 단어가 리스트 자료 구조로 들어 있음. df.explode()를 이용해 한 행에 한 단어만 들어가도록 하겠음.
# 한 행에 한 단어가 들어가도록 구성
nouns = nouns.explode()
nouns
nouns로 데이터 프레임을 만든 다음 두 글자 이상으로 된 단어만 남기고 단어 빈도표를 만들겠음.
# 데이터 프레임 만들기
df_word = pd.DataFrame({'word' : nouns})
# 글자 수 추가
df_word['count'] = df_word['word'].str.len()
# 두 글자 이상 단어만 남기기
df_word = df_word.query('count >= 2')
df_word
# 빈도표 만들기
df_word = df_word.groupby('word', as_index = False) \
.agg(n = ('word', 'count')) \
.sort_values('n', ascending = False)
df_word
5. 단어 빈도 막대 그래프 만들기
댓글에 어떤 단어가 많이 사용됐는지 알아보기 쉽도록 자주 사용된 상위 20개 단어를 추출해 막대 그래프로 만들겠음.
# 단어 빈도 상위 20개 추출
top20 = df_word.head(20)
top20
# 가로 세로 크기 설정
plt.rcParams.update({'figure.figsize' : [6.5, 6]}) # 가로 세로 크기
# 막대 그래프 만들기
sns.barplot(data = top20, x = 'n', y = 'word')
출력된 그래프를 보면 단어별 빈도가 잘 드러남. '방탄', '축하', '자랑', '국위선양', '대한민국' 등의 단어를 보면 BTS가 빌보드 차트 1위에 오른 일을 축하하고 대한민국을 세계에 알려 국위 선양을 했다고 칭찬하는 댓글이 많다는 것을 알 수 있음. 또한 '군대', '면제', '군면제' 등의 단어를 보면 BTS의 병역 의무를 면제해 줘야 한다는 댓글도 많다는 것을 알 수 있음.
[Do it! 실습] 워드 클라우드 만들기
기사 댓글에 사용된 단어를 이용해 워드 클라우드를 만들겠음. 먼저 데이터 프레임으로 되어 있는 df_word를 딕셔너리 자료 구조로 변환함.
# 데이터 프레임을 딕셔너리로 변환
dic_word = df_word.set_index('word').to_dict()['n']
wc()를 만든 다음 wc.generate_from_frequencies()를 이용해 워드 클라우드를 만듦. 출력된 워드 클라우드를 보면 댓글의 전반적인 경향과 여론 분위기를 알 수 있음.
# wc 만들기
from wordcloud import WordCloud
wc = WordCloud(random_state = 1234, # 난수 고정
font_path = font, # 폰트 설정
width = 400, # 가로 크기
height = 400, # 세로 크기
background_color = 'white', # 배경색
mask = img) # mask 설정
# 워드 클라우드 만들기
img_wordcloud = wc.generate_from_frequencies(dic_word)
# 워드 클라우드 출력하기
plt.figure(figsize = (10, 10)) # 가로, 세로 크기 설정
plt.axis('off') # 테두리 선 없애기
plt.imshow(img_wordcloud) # 워드 클라우드 출력
{알아 두면 좋아요} 텍스트 마이닝 더 알아보기
다양한 형태소 분석기 이용하기
KoNLPy를 이용하면 한나눔, 꼬꼬마 외에도 다양한 형태소 분석기를 이용할 수 있음. 또한 명사뿐 아니라 동사, 형용사 등 다양한 품사를 추출할 수 있음.
KoNLPy 공식 문서 참고: konlpy.org/ko/latest/
텍스트 마이닝 자세히 익히기
텍스트 마이닝을 자세히 익히고 싶다면 《Do it! 쉽게 배우는 R 텍스트 마이닝》 참고
- 10장 END -
'데이터 분석(Data Analysis) > 쉽게 배우는 파이썬 데이터 분석' 카테고리의 다른 글
[넷째마당_다양한 데이터 분석의 세계] 12 인터랙티브 그래프 (0) | 2023.12.31 |
---|---|
[넷째마당_다양한 데이터 분석의 세계] 11 지도 시각화 (0) | 2023.12.31 |
[셋째마당_실전! 데이터 분석 프로젝트] 09 데이터 분석 프로젝트 - 한국인의 삶을 파악하라! (0) | 2023.12.29 |
[둘째마당_본격실습! 데이터 갖고 놀기] 08 그래프 만들기 (0) | 2023.12.25 |
[둘째마당_본격실습! 데이터 갖고 놀기] 07 데이터 정제 - 빠진 데이터, 이상한 데이터 제거하기 (0) | 2023.12.23 |