2016-12-12 3 views
0

나는 당신이 도울 수 있다고 확신합니다. 나는 단지 소셜 미디어 마이닝에 내 논문을 쓰고 있는데, 나는 이런 종류의 물건에 매우 익숙하다. 나에게 인내심을 가져라.)데이터 프레임 플로팅 - 파이썬

나는 트위터에서 의견 마이닝을하고있다. . 그 다음에 특정 기간 동안 트윗을 묶었습니다. 예를 들어 01.12.2016 02:30:00과 01.12.2016 05:30:00 사이에 스트리밍되는 모든 트윗이 있습니다. 그리고 나서 나는이 기간의 트윗에 대한 의견을 합쳐서 나타내는 특정 가치를 얻기 위해 트윗을 분석했습니다. 그래서 각 기간은 일정한 가치를 얻습니다. 이제 내 결과를 시각화하고 싶지만, 실제로는 어떻게 알지 못합니다. 나는 그렇게 생각하지 않아야한다. 나는 dict (results)와 두 개의 키 (date (datetime_object)와 opinion (int))를 가지고있다. 이제 저는 y 축이 의견이고 x 축이 datetime 인 선형 차트를 플롯하려고합니다.

results={"Date":[datetime_object1,datetime_object2,..],"Opinion":[235,158,...]} 

datetime 객체를 x 축에 가져 오는 방법이 없습니다.

탁월한 사전! 당신이 사전으로 저장된 데이터가있는 경우

폴커

답변

0

난 그냥 pandas.DataFrame.from_record를 사용하여 팬더 DataFrame에 넣어하는 것이 좋습니다 것입니다. 그런 다음 DataFrame.plot을 사용하여 데이터를 플롯 할 수 있습니다. 아래는 다중 인덱스 팬더 DataFrame을 생성하고, 레벨을 리셋 한 다음, 의견 대 날짜/시간을 플롯하는 예제입니다.

import pandas 
import numpy 
import matplotlib.pyplot as plt 

date_range = pandas.date_range('2016-01-01', '2016-02-01', freq='D') 
results = numpy.random.normal(size=len(date_range)) 
opinions = [235, 158, 162, 150, 245, 132, 178, 200] * 4 
numpy.random.shuffle(opinions) 
df = pandas.DataFrame(results, index=[date_range, opinions], columns=['result']) 
df.index.names = ['date', 'opinion'] 

# here I plot the opinion vs date directly, but you could 
# assign a variable to it or the dataframe if you want to do fancier 
# things with the plot 
df.reset_index(level=1)['opinion'].plot() 
plt.show() 
+0

대단히 감사합니다. 이것은 내가 필요한 것입니다! – VoOu

관련 문제