Example #1
0
def get_painting_params(request):
  source = helpers.check_source(request.GET.get('source', None))
  resolution = helpers.check_resolution(request.GET.get('resolution', None))
  chisq_cutoff = helpers.check_float(request.GET.get('chisq', None))
  if None in (source, resolution, chisq_cutoff):
    return http.HttpResponseBadRequest()
  cursor = connections['default'].dict_cursor()
  
  info = {}
  query = '''
    SELECT * FROM interpretome_ancestry.%s_%s_frequencies
    WHERE chisq > %s
    ORDER BY chromosome, position ASC
  ''' % (source, resolution, chisq_cutoff)
  cursor.execute(query)
  chromosomes = {}
  for res in cursor.fetchall():
    if res['chromosome'] not in chromosomes:
      chromosomes[res['chromosome']] = []
    chromosomes[res['chromosome']].append(res)
  
  query = '''
    SELECT chromosome, rel_length, rel_centromere, length
    FROM interpretome_ancestry.chrom_info
    ORDER BY chromosome;
  '''
  cursor.execute(query)
  chrom_info = []
  for res in cursor.fetchall():
    chrom_info.append( [res['rel_length'], res['rel_centromere'], res['length']] )
  
  response = {'chromosomes':chromosomes, 'chrom_info':chrom_info}
  
  return http.HttpResponse(simplejson.dumps(response), mimetype = "application/json")
Example #2
0
def linked(request):
    dbsnps = helpers.check_dbsnp_array(request.REQUEST.get('dbsnps', None))
    population = helpers.check_population(
        request.REQUEST.get('population', None))
    ld_cutoff = helpers.check_float(request.REQUEST.get('ld_cutoff', None))

    if None in (dbsnps, population, ld_cutoff):
        return http.HttpResponseBadRequest()

    cursor = connections['default'].dict_cursor()

    results = {}
    for dbsnp in dbsnps:
        query = '''
      SELECT *
      FROM var_hapmap.hapmap_phased_%s 
      WHERE dbSNP = %s;
    ''' % (population, dbsnp)

        cursor.execute(query)
        hapmap_result = cursor.fetchone()

        query = '''
      SELECT dbSNP1, dbSNP2, R_square 
      FROM var_ld_data.ld_%s 
      WHERE dbSNP1 = %d OR dbSNP2 = %d
      AND R_square >= %s
      ORDER BY R_square DESC;
    ''' % (population, dbsnp, dbsnp, ld_cutoff)

        cursor.execute(query)
        raw_result = cursor.fetchall()

        if hapmap_result is None or raw_result is None:
            results[dbsnp] = []
            continue

        result = []
        for entry in raw_result:
            if entry['dbSNP1'] == dbsnp:
                other_dbsnp = entry['dbSNP2']
            else:
                other_dbsnp = entry['dbSNP1']
            query = '''
        SELECT *
        FROM var_hapmap.hapmap_phased_%s 
        WHERE dbSNP = %s;
      ''' % (population, other_dbsnp)
            cursor.execute(query)
            if cursor.fetchone() is not None:
                result.append(entry)

        results[dbsnp] = result

    return http.HttpResponse(simplejson.dumps(results),
                             mimetype='application/json')
Example #3
0
def linked(request):
  dbsnps = helpers.check_dbsnp_array(request.REQUEST.get('dbsnps', None))
  population = helpers.check_population(request.REQUEST.get('population', None))
  ld_cutoff = helpers.check_float(request.REQUEST.get('ld_cutoff', None))
  
  if None in (dbsnps, population, ld_cutoff):
    return http.HttpResponseBadRequest()
  
  cursor = connections['default'].dict_cursor()
  
  results = {}
  for dbsnp in dbsnps:
    query = '''
      SELECT *
      FROM var_hapmap.hapmap_phased_%s 
      WHERE dbSNP = %s;
    ''' % (population, dbsnp)
    
    cursor.execute(query)
    hapmap_result = cursor.fetchone()
    
    query = '''
      SELECT dbSNP1, dbSNP2, R_square 
      FROM var_ld_data.ld_%s 
      WHERE dbSNP1 = %d OR dbSNP2 = %d
      AND R_square >= %s
      ORDER BY R_square DESC;
    ''' % (population, dbsnp, dbsnp, ld_cutoff)
    
    cursor.execute(query)
    raw_result = cursor.fetchall()
    
    if hapmap_result is None or raw_result is None:
      results[dbsnp] = []
      continue
    
    result = []
    for entry in raw_result:
      if entry['dbSNP1'] == dbsnp:
        other_dbsnp = entry['dbSNP2']
      else:
        other_dbsnp = entry['dbSNP1']
      query = '''
        SELECT *
        FROM var_hapmap.hapmap_phased_%s 
        WHERE dbSNP = %s;
      ''' % (population, other_dbsnp)
      cursor.execute(query)
      if cursor.fetchone() is not None:
        result.append(entry)
      
    results[dbsnp] = result
  
  return http.HttpResponse(simplejson.dumps(results), mimetype = 'application/json')
Example #4
0
def get_rare_variants(request):
  population = helpers.check_population(request.GET.get('population', None))
  cutoff = helpers.check_float(request.GET.get('cutoff', None))
  if None in (population, cutoff):
    return http.HttpResponseBadRequest()
  query = '''SELECT rsid, refallele, otherallele, otherallele_freq
  FROM var_hapmap.snp_frequencies_%s
  WHERE otherallele_freq <= %s''' % (population.lower(), cutoff)
  cursor = connections['default'].dict_cursor()
  cursor.execute(query)
  return http.HttpResponse(simplejson.dumps(cursor.fetchall()), mimetype = "application/json")
Example #5
0
def get_rare_variants(request):
    population = helpers.check_population(request.GET.get('population', None))
    cutoff = helpers.check_float(request.GET.get('cutoff', None))
    if None in (population, cutoff):
        return http.HttpResponseBadRequest()
    query = '''SELECT rsid, refallele, otherallele, otherallele_freq
  FROM var_hapmap.snp_frequencies_%s
  WHERE otherallele_freq <= %s''' % (population.lower(), cutoff)
    cursor = connections['default'].dict_cursor()
    cursor.execute(query)
    return http.HttpResponse(simplejson.dumps(cursor.fetchall()),
                             mimetype="application/json")
Example #6
0
def set_volume():
	respone = volumizer.setVolume(check_float(request, params.VALUE))

	if respone == None:
		return send_error(error_codes.INVALID_VALUE, "Invalid volume value. Only 0 - 100")

	respone.update({"code" : error_codes.SUCCESFULL_QUERY})

	vol = respone['config']['milli']
	playlistThreader.setVolume(vol)
	trackThreader.setVolume(vol)

	return jsonify(respone)
Example #7
0
def get_volume():
	value = check_float(request, params.VALUE)

	if value != None and value != "":
		vol_response = volumizer.setVolume(value)
		if vol_response != None:
			vol = vol_response['config']['milli']
			playlistThreader.setVolume(vol)
			trackThreader.setVolume(vol)

	respone = volumizer.getJSON()
	respone.update({"code" : error_codes.SUCCESFULL_QUERY})
	return jsonify(respone)
Example #8
0
def get_painting_params(request):
    source = helpers.check_source(request.GET.get('source', None))
    resolution = helpers.check_resolution(request.GET.get('resolution', None))
    chisq_cutoff = helpers.check_float(request.GET.get('chisq', None))
    if None in (source, resolution, chisq_cutoff):
        return http.HttpResponseBadRequest()
    cursor = connections['default'].dict_cursor()

    info = {}
    query = '''
    SELECT * FROM interpretome_ancestry.%s_%s_frequencies
    WHERE chisq > %s
    ORDER BY chromosome, position ASC
  ''' % (source, resolution, chisq_cutoff)
    cursor.execute(query)
    chromosomes = {}
    for res in cursor.fetchall():
        if res['chromosome'] not in chromosomes:
            chromosomes[res['chromosome']] = []
        chromosomes[res['chromosome']].append(res)

    query = '''
    SELECT chromosome, rel_length, rel_centromere, length
    FROM interpretome_ancestry.chrom_info
    ORDER BY chromosome;
  '''
    cursor.execute(query)
    chrom_info = []
    for res in cursor.fetchall():
        chrom_info.append(
            [res['rel_length'], res['rel_centromere'], res['length']])

    response = {'chromosomes': chromosomes, 'chrom_info': chrom_info}

    return http.HttpResponse(simplejson.dumps(response),
                             mimetype="application/json")