Esempio n. 1
0
def crosssection_suite(query):
  crosssection_list = []
  user = query.user

  for q in Query.get_by_user(user):
    if q.format == 'number' and q.name != query.name:
      for x in range(query_range(q)[0], query_range(q)[1]):
        avg_name = 'Average when ' + q.name + ' = ' + str(x)
        avg_value = float_str_format(avg_int_on_sliced_int(query, q, x))
  
        crosssection_list.append((avg_name, avg_value))

        percent_name = 'Change from average when ' + q.name + ' = ' + str(x)
        percent_value =float_str_format(percent_from_avg_int_on_sliced_int(query, q, x))

        crosssection_list.append((percent_name, percent_value))

    elif q.format == 'text':
      for word in common_words(DataPoint.get_by_query(q)).split(', '):
        avg_name = 'Average when "' + word + '" is in ' + q.name
        avg_value = float_str_format(avg_int_on_sliced_text(query, q, word))

        crosssection_list.append((avg_name, avg_value))

        #percent_name = 'Change from average when ' + word + ' in ' +q.name
        #percent_value = float_str_format(percent_from_avg_int_on_sliced_int(query, q, x))

        #crosssection_list[percent_name] = percent_value
        
  return crosssection_list
Esempio n. 2
0
  def generate_query_table(self, user):
    queries = Query.get_by_user(user)

    html = ''

    for query in queries:
      html += self.query_to_table_row(query)

    return html
Esempio n. 3
0
def covariance_suite(query):
  covariance_list = []
  user = query.user 

  for q in Query.get_by_user(user):
    if q.format == 'number' and q.name != query.name:
      covariance_list.append(
        ('Covariance with ' + q.name, float_str_format(covariance(query,q))))

  return covariance_list
Esempio n. 4
0
def correlation_suite(query):
  correlation_list = []
  user = query.user 

  for q in Query.get_by_user(user):
    if q.format == 'number' and q.name != query.name:
      correlation_list.append(
        ('Correlation with ' + q.name, float_str_format(correlation_coefficient(query,q))))

  return correlation_list
Esempio n. 5
0
  def generate_data_view(self, user):
    # get all the queries

    queries = Query.get_by_user(user)
    html = ''
    # for each query
    #   append query_to_data(query)
    for query in queries:
      html += self.query_to_data(query)
    
    return html
Esempio n. 6
0
    def get(self):
        start = datetime.now().strftime("%s")
        users = User.all().fetch(1000)

        for user in users:
            queries = Query.get_by_user(user)
            for query in queries:
                if query.is_stale() and query.is_time_to_send():
                    send_query(query)
                    break  # only send one query per user every interval

        end = datetime.now().strftime("%s")

        logging.info("SendQueries started at " + start)
        logging.info("SendQueries finished at " + end)
Esempio n. 7
0
  def get(self):
    user = self.get_user()
    if not user:
      return

    user_email = self.request.get('user_email')
    
    user = User.get_by_email(user_email)

    queries = Query.get_by_user(user)

    query_ids = []
    for query in queries:
      query_ids.append(str(query.key()))

    self.response.out.write(json.dumps(query_ids))
Esempio n. 8
0
  def get(self):
    user = self.get_user()
    if not user:
      return

    user_email = self.request.get('user_email')
    
    user = User.get_by_email(user_email)
    queries = Query.get_by_user(user)

    datapoints = []

    for query in queries:
      for datapoint in DataPoint.get_by_query(query):
        datapoints.append(datapoint.to_dict())

    self.response.out.write(json.dumps(datapoints))