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")
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')
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')
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")
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")
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)
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)
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")