def linearRegressionObject():
        AnalysisObjectFactory.initialFactory()
	types = AnalysisObjectFactory.createObject("LinearRegressionObject","hillary clinton",["2/17/2016","2/18/2016","2/19/2016","2/20/2016","2/21/2016","2/22/2016","2/23/2016"],("GDELT",[1,2,3,7,4,3,10]),("Tweet",[20,10,15,20,5,17,21]))
	(text,data)= types.linearRegressionAnalysis()
	print text
	print data
	return 0
def regressionObject():
        fake_tweets = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
        #change these values to plot different points
        fake_polls = np.array([3, 2, 5, 0, 4, 10, 7, 0, 5])

        AnalysisObjectFactory.initialFactory()
        types = AnalysisObjectFactory.createObject("RegressionObject", "Bernie", "Dates I guess", fake_tweets, fake_polls)
        types.Interpolate()
def main():
	dic = QueryingDavid.candidateCountRangeHourlyDict("trump","2016041100","2016041700")
	ordered_dic = collections.OrderedDict(sorted(dic.items()))
	dates =[]
	count =[]
	for item in ordered_dic:
		dates.append(item)
		count.append(float(ordered_dic[item]))
	AnalysisObjectFactory.initialFactory()
	types = AnalysisObjectFactory.createObject("TimeSeriesObject","trump","Twitter",dates,count)
	text= types.timeSeriesAnalysis()
	return 0
def main():
    buildModel(300000)
    AnalysisObjectFactory.initialFactory()
    list_of_userids = []
    list_of_list_of_tweets = []
    list_of_candidates = ["trump"]
    for candidate in list_of_candidates:
        list_of_userids = []
        list_of_list_of_tweets = []
        final_result = session.execute("select * from topTweeters where candidate_name = '" + candidate + "'")
        for user in final_result:
            list_of_userids.append(str(getattr(user, "user_id")))
            list_of_list_of_tweets.append(getattr(user, "list_of_tweets"))
        types = AnalysisObjectFactory.createObject(
            "TweetAnalWord2Vec", candidate, ["3/6/2016", "4/5/2016"], list_of_userids, list_of_list_of_tweets
        )
        # types = AnalysisObjectFactory.createObject("TweetAnalWord2Vec","trump",["2/17/2016","2/18/2016","2/19/2016","2/20/2016","2/21/2016","2/22/2016","2/23/2016"],['123','234'],[["Trump is a motherfucking Genius! Ban all Muslims is the best thing ever!","RT @kateloving: KING: Bill Clinton almost sounds like Donald Trump with jab https://t.co/5a2ze5YTc4","This is an exercise in taking Donald Trump at his word"," @GlobeIdeas editor @katiekings... https://t.co/vEa1mhKVDz via @jorgeramosnews"],["The TRUMP Fight Song [unofficial] - TRUMP 2016 https://t.co/9AnOeQV83V via @YouTube","Cheats abd liars in GOPe - time to write in Trump! #StopTheSteal help Trump #BurnDownTheGOP https://t.co/3z8qY8IW5Q","Trump nomination up to 200 people","Trump nomination up to 200 people"]])
        types.sentimentAnalysis()
    return 0
from AnalysisObjectFactory import AnalysisObjectFactory
import numpy as np
from sklearn import linear_model
import matplotlib as mpl
mpl.use('Agg')
import matplotlib.pyplot as plt
import pandas as pd
import GetHourlyTweetsDayRange
from RegressionAnalysis import RegressionObject
import GetDailyGDELTCounts
import sys

AnalysisObjectFactory.initialFactory()

def getTweets(candidate, start, end):
    #get the tweets
    twitter_counts, dates = GetHourlyTweetsDayRange.hourlyTweets(candidate, start, end)
    
    #change Nones to 0's
    i = 0
    for count in twitter_counts:
        if count == None:
            twitter_counts[i] = 0
        i += 1

    #turn hourly counts into daily counts
    daily_counts = []
    i = 0
    while i < len(twitter_counts):
        daily_counts.append(sum(twitter_counts[i:i+23]))
        i += 24
def timeSeriesObject():
        AnalysisObjectFactory.initialFactory()
        types = AnalysisObjectFactory.createObject("TimeSeriesObject", "Trump", "Date", [1, 2, 3, 4, 5, 6, 7, 8], [10, 8, 4, 6, 7, 5, 9, 2])
        print types.getlist_para_two()
def graphAnalysis():
        AnalysisObjectFactory.initialFactory()
        types = AnalysisObjectFactory.createObject("GraphAnalysisNormalized","hilary clinton","gdelt",["2/23/2016","2/22/2016"],[15,23])
        print types.getlist_para_two()
def classificationAnalysis():
        AnalysisObjectFactory.initialFactory()
	types = AnalysisObjectFactory.createObject("ClassificationAnalysis","2/23/2016","gdelt",["hilary clinton","donaldtrump","ted cruz"],[9,8,2])
	print types.getlist_para_two()