import numpy as np
unique_nouns = set(filtered_tweet_noun)
unique_nouns = list(unique_nouns)
noun_index = {noun: i for i, noun in enumerate(unique_nouns)}
occurs = np.zeros([len(filtered_tweet_tagged), len(unique_nouns)])
for i,tweet in enumerate(filtered_tweet_tagged):
if tweet[1] in ['NN','NNP','NNS','NNPS']:
index = noun_index[tweet[0]]
occurs[i][index] = 1
co_occurs = occurs.T.dot(occurs)
%matplotlib inline
import matplotlib.pyplot as plt
import networkx as nx
graph = nx.Graph()
for i in range(len(unique_nouns)):
for j in range(i+1, len(unique_nouns)):
if co_occurs[i][j] > 0:
graph.add_edge(unique_nouns[i], unique_nouns[j])
plt.figure(figsize=(15, 15))
layout = nx.spring_layout(graph, k=.5)
nx.draw(graph, pos=layout, with_labels=True,
font_size=10, alpha=0.3, node_size=3000)
plt.show()
설명
트위터에서 'Obama'라는 키워드로 3883개의 트윗을 가져오고, 그 중에서 1000개의 트윗을 랜덤하게 선택했습니다. nltk를 이용하여 filtering한 명사들이 filtered_tweet_noun에 저장되어 있습니다. 그 후 수업에서 한대로 co-occurrence를 파악하는 과정을 거쳤는데, 맨 마지막에 그래프 그리는 코드를 실행하니 오류는 뜨지 않지만 아무 것도 뜨지 않고 흰 창만 아래 결과에 나왔습니다. 혹시 단어들 간의 연관성이 떨어져서 그런 게 아닌가 해서 일부러 if co_occurs[i][j] > 0이라고도 설정해봤지만, 여전히 아무 것도 뜨지 않고 흰 창만 결과로 나온 상황입니다. 어떤 점이 문제인 건가요?
에러 메시지
에러 메시지는 별도로 뜨지 않았지만, co_occurs 결과를 일단 첨부합니다. co_occurs가 이런 값이 나오는데, 그래프에 아무 것도 뜨지 않는 게 정상인 건가요?
실행 환경
Windows10 + 64bit / Python 3.7 / Jupyter Notebook
코드
설명
트위터에서 'Obama'라는 키워드로 3883개의 트윗을 가져오고, 그 중에서 1000개의 트윗을 랜덤하게 선택했습니다. nltk를 이용하여 filtering한 명사들이 filtered_tweet_noun에 저장되어 있습니다. 그 후 수업에서 한대로 co-occurrence를 파악하는 과정을 거쳤는데, 맨 마지막에 그래프 그리는 코드를 실행하니 오류는 뜨지 않지만 아무 것도 뜨지 않고 흰 창만 아래 결과에 나왔습니다. 혹시 단어들 간의 연관성이 떨어져서 그런 게 아닌가 해서 일부러 if co_occurs[i][j] > 0이라고도 설정해봤지만, 여전히 아무 것도 뜨지 않고 흰 창만 결과로 나온 상황입니다. 어떤 점이 문제인 건가요?
에러 메시지
에러 메시지는 별도로 뜨지 않았지만, co_occurs 결과를 일단 첨부합니다. co_occurs가 이런 값이 나오는데, 그래프에 아무 것도 뜨지 않는 게 정상인 건가요?