def parser(data): AFMDict = defaultdict(lambda: defaultdict(dict)) for entry in data["entries"]: newdict = {} for stat in data["entries"][entry]['nestedStats']["entries"]: newdict[stat] = data["entries"][entry]['nestedStats']["entries"][stat] AFMDict[entry]['vectorName'] = newdict['vectorName']['description'] newdict.pop('vectorName')['description'] for key in newdict: AFMDict[entry][key.strip('common.')] = newdict[key]['value'] return AFMDict
def __init__(self,repeatMaskerFile): self.repeat = defaultdict(lambda: defaultdict(list)) with open(repeatMaskerFile,'r') as IN_REP: IN_REP.readline() IN_REP.readline() IN_REP.readline() for line in IN_REP: line = line.strip() score,pdiv,pdel,pins,chrom,beg,end,left,cplus,match,rep_class,rbeg,rend,rleft,id = line.split() repeat[chrom]['start'].append(beg) repeat[chrom]['end'].append(end)
def __init__(self, repeatMaskerFile): self.repeat = defaultdict(lambda: defaultdict(list)) with open(repeatMaskerFile, 'r') as IN_REP: IN_REP.readline() IN_REP.readline() IN_REP.readline() for line in IN_REP: line = line.strip() score, pdiv, pdel, pins, chrom, beg, end, left, cplus, match, rep_class, rbeg, rend, rleft, id = line.split( ) repeat[chrom]['start'].append(beg) repeat[chrom]['end'].append(end)
def numSubmatrixSumTarget(self, m, target: int) -> int: def pref(x): asum = 0 p = [0] * len(x) for i in range(len(x)): asum += x[i] p[i] = asum return p for i, r in enumerate(m): m[i] = pref(r) res = 0 for i in range(0, len(m[0])): for j in range(i, len(m[0])): h = defaultdict(lambda: 0) h[0] = 1 asum = 0 for k in range(len(m)): asum += (m[k][j] - m[k][i]) other = asum - target if other in h: res += h[other] h[asum] += 1 return res
def append_inverted(url, token_list, result): tf_raw = defaultdict(int) count = len(token_list) for token in token_list: tf_raw[token] += 1 for token, c in tf_raw.items(): result[token].append({'url':url,'tf': c/count,'idf': None,'tf-idf':None})
def freqQuery(queries): ans = [] counts = defaultdict(int) freq = defaultdict(int) for a, b in queries: if a == 1: freq[counts[b]] -= 1 counts[b] += 1 freq[counts[b]] += 1 elif a == 2 and counts[b] > 0: freq[counts[b]] -= 1 counts[b] -= 1 freq[counts[b]] += 1 elif a == 3: ans.append(1) if (freq[b] > 0) else ans.append(0) return ans
def __init__(self, genome): self.arg = arg nodes = list(genome.node_genes.keys()) edges = defaultdict(list) for conn in genome.conn_genes: edges[conn.in_node_id].append(conn.out_node_id) edges[conn.out_node_id].append(conn.in_node_id)
def countsort(values,mini, maxi): count=defaultdict(int) for i in array: count[i]+=1 result=[] for j in xrange(mini,maxi+1): result+=[j]*count[j] return result
def non_duplicate(string): frequency = defaultdict(int) for i in string: frequency[i] += 1 for i in string: if frequency[i] == 1: return i return -1
def get_amounts_by_canidate_and_category(file, fields, candidate_id_field): data = {} with open(os.path.join(FILE_DIR, file)) as fh: for row in csv.DictReader(fh, fields, dialect='open_secrets'): cid = row[candidate_id_field] if cid not in data: data[cid] = defaultdict(float) realcode = row['RealCode'] data[cid][realcode] += float(row["Amount"]) return data
# >>> SafeFormatter().format('{one} {one:x} {one:10f} {two!r} {two[0]}', one=215, two=['James', 'Bond']) # "215 d7 215.000000 ['James', 'Bond'] James" # >>> SafeFormatter().format('{one} {one:x} {one:10f} {two!r} {two[0]}', one=215) # '215 d7 215.000000 {two!r} {two[0]}' # >>> SafeFormatter().format('{one} {one:x} {one:10f} {two!r} {two[0]}') # '{one} {one:x} {one:10f} {two!r} {two[0]}' # >>> SafeFormatter().format('{one} {one:x} {one:10f} {two!r} {two[0]}', two=['James', 'Bond']) # "{one} {one:x} {one:10f} ['James', 'Bond'] James" >>> from collections import defaultdict >>> kwargs = {"name": "mark"} >>> template = "My name is {0[name]} and I'm really {0[adjective]}." >>> template.format(defaultdict(str, kwargs)) "My name is mark and I'm really ." from functools import partial s = partial("{foo} {bar}".format, foo="FOO") print s(bar="BAR") # FOO BAR import string try: # Python 3 from _string import formatter_field_name_split
len(samples) outputs[0] [x.split('|', 2) for x in outputs][0] [x.strip().split('|', 2) for x in outputs][0] outputs = [x.strip().split('|', 2) for x in outputs] outputs[0] outputs[0] [[x[0], map(int, x[1].split()), x[2] for x in outputs][0] ] [[x[0], map(int, x[1].split()), x[2]] for x in outputs][0] [[x[0], map(int, x[1].split()) + x[2]] for x in outputs][0] [[x[0], map(int, x[1].split()) + [x[2]]] for x in outputs][0] outputs = [[x[0], map(int, x[1].split()) + [x[2]]] for x in outputs] get_ipython().magic(u'save read.py 0-23') from collection import default_dict from collections import default_dict from collection import defaultdict from collections import defaultdict genes = defaultdict(list) outputs[0] for output in outputs: defaultdict[output[0]].append(output[1]) outputs[0] outputs[2] for output in outputs: genes[output[0]].append(output[1]) genes get_ipython().magic(u'save read.py 0-35')
def not_game(state): responses = defaultdict(lambda:state) responses['Restart'],responses['Exit'] = 'Init','Exit' return responses[action]
def __init__(self,name): self.name= name def __repr__(self): return 'Item({!r})'.format(self.name) q = PriorityQueue() # 1.6 字典中的键映射多个值 from collection import defaultdict d = default(list) d['a'].append(1) d['a'].append(2) d['b'].append(4) d = defaultdict(set) d['a'].add(1) d['a'].add(2) d['b'].add(4) # 1.7 字典排序 from collections import OrderdDict def orderd_dict(): d = OrderDict() d['foo'] = 1 d['fbar'] = 2 d['spa'] = 3 import json json.dumps(d)
def __init__(self): self.checkpoints = [] self.checkpoint_names = [] self.time_accumulator = defaultdict(float) self.accumulator_starts = defaultdict(float)
def __init__(self): self.edges = defaultdict(list)
def __init__(self,filename): self.fileName=filename self.conditions=defaultdict(list) self.indentList=defaultdict(list) self.file=open(filename,"r") self.controlFlowModifiers=["while","for","if","elif","else:"]
def Q(state,id_team,id_player): dicoaction = {"conserver":conserver,"dribbler":dribbler,"tirer": tirer,finition":finition"} S = discretisation(state,id_team,id_player) senario{S : dicoation} return senario Q = dict() Q[s]=defaultdict(float) Q[s][a] def Monte_carlo(Q= None, scenario = [(state,action)...,(state,action)]): R = recompense(senario[-1][0]) if Q is None: Q = dict() for (s,a) in senario[-2::-1]: if s not in Q: Q[s] = defaultdict(float) Q[s][a] = Q[s][a] + alpha*(R-Q[s][a]) R = gamma * R +recompense(s)
from collection import defaultdict n = int(input()) A = list(int(x) for x in input().split()) B = list(int(x) for x in input().split()) C = set(int(x) for x in input().split()) A_dict = defaultdict(set) B_dict = defaultdict(set) for i, x in enumerate(A): A_dict[x].add(i) for i, x in enumerate(B): if i in C: B_dict[x].add(i)
from collection import defaultdict RESULTS_DIR = "./output/" MODEL_KEY = 'alg_name' FOLD_KEY = 'fold_num' DB_NAME_KEY = 'dataset_name' dbs_results = defaultdict(lambda: defaultdict(lambda: defaultdict(dict))) for file_path in os.listdir(RESULTS_DIR): if file_path.endswith(".csv"): df = pd.read_csv(os.path.join(RESULTS_DIR, file_path)) for row in df.to_dict(orient='records'): model = row[MODEL_KEY] fold_num = row[FOLD_KEY] db_name = row[DB_NAME_KEY] row.pop(MODEL_KEY) row.pop(FOLD_KEY) row.pop(DB_NAME_KEY) dbs_results[db_name][model][fold_num] = row print(dbs_results) write_all_results(dbs_results)
def download_dir(remoteDir, localDir, sftp): filterKeys = ('bam','sam','bai','junction','htm') dirItems =sftp.listdir_attr(remoteDir) os.path.exists(localDir) or os.path.makedirs(loaclDir) for item in dirItems: remotePath = remoteDir + '/' + item.filname if '_' not in item.filename: fmtFilName=item.filename else: fmtFilName='_'.join(item.filename.split('_')[0:2]+\ '.'+'.'.join(item.filename.split('.')[-2:]) localpath = os.path.join(loaclDir , fmtFilName) try: sftp.listdir_arrt(remotePath) download_dir(remoteDir, localDir, sftp) except: if remotePath.endwith(filterKeys): continue sftp.get(remotePath,localpath) print>>sys.stdeer,'[INFO] Download {} success!'.format(fmtFilName) return sftp def downloadServer(barcodeDic,configInfo,ip,username,pwd,port=22): localDir = configInfo['baseInfo']['inputdir'] remoteDir = configInfo['Server']['path'] transport = paramiko.Transport ((ip,port)) transport.connect(username=username,password=pwd) sftp = paramiko.SFTPClient.from_transport(transport) for name in barcodeDic: barcodeLst = barcodeDic[name].split(',') for barcode in barcodeLst: remotePath = remoteDir + '/' + barcode localpath =os.path.join(loaclDir,barcode) 1 if os.path.join.exists(localpath) else os.mkdir(localpath) download_dir(remotePath,localpath,sftp) transport,close() print >>sys.stdeer,'[INFO] Download total tesults from PGM server success' return 0 def createCustomResDir(barcodeDic,outdir): for key in barcodeDic: outPath = os.path.join(outdir , key) 1 if os.path.exists(outPath) else os.mkdir (outPath) return 0 def writeFPKM(fpkmFil,geneDb,results): resDict= collections.defaultdict() with open(fpkmFil,'r') as fpRead : header =fpRead.readline() index1 =header.split('\t').index('FPKM') index2 =header.split('\t').index('gene_short_name') for line in fpRead: if not in line: continue lineFmt =line.strip().split('\t') resDict[lineFmt[index2]]= line[index1] [results[gene].append(resDict[gene]) if gene in resDict else results[gene].append(0) for gene in geneDb] return results def getFPKM(barcodeDic,customInfo,geneDb,timeSerie,suffix='genes.fpkm_tracking'): inputDir = customInfos['baseInfo']['inputdir'] outputdir = customInfos['baseInfo']['outdir'] for name in barcodeDic: outPath = os.path.join(outputdir,name) results = collection.defaultdict(list)
import sys import csv import pysam from Bio import SeqIO from Bio.Seq import Seq from Bio.Alphabet import generic_dna from collection import defaultdict #dicionario de f*g [Rd1/Rd2, +/-] flag_dict = {'73':[1,1], '89':[1,1], '121':[1,-1], '153':[-1,-1], '185':[-1,-1], '137':[-1,1], '99':[1,1], '147':[-1,-1], '83':[1,-1], '163':[-1,1], '67':[1,1], '115':[1,-1], '179':[-1,-1], '81':[1,-1], "161":[-1,1], '97':[1,1], '145':[-1,-1], '65':[1,1], '129':[-1,1], '113':[1,-1], '177':[-1,-1] } Genome = {} non_can = set([]) can = set([]) dn_count = defaultdict(int) def Genomictabulator(fasta): print >> sys.stderr, "Cargando genoma en la memoria RAM ...", f = open(fasta) for chrfa in SeqIO.parse(f, "fasta"): Genome[chrfa.id] = chrfa.seq print >> sys.stderr, "OK" f.close()
normal dict for key in s: if key in d: d[key]+=1 else: d[key]=1 import collections d = collections.defaultdict(int) from collection import defaultdict dd=defaultdict(int) for key in s: dd[key]+=1 ordereddict from collection import Ordereddict dict1=Ordereddict() from collection import namedtuple point =namedtuple('point','x,y') pt1=point(1,2)
def __init__(self): self.graph = defaultdict(list)
def __init__(self): self._observers = defaultdict(list)
from urllib import request import csv my_url = 'https://www.stats.govt.nz/assets/Uploads/Annual-enterprise-survey/Annual-enterprise-survey-2018-financial-year-provisional/Download-data/annual-enterprise-survey-2018-financial-year-provisional-size-bands-csv.csv' def download_csv(csv_url): response = request.urlopen(csv_url) csv = response.read() str_csv = str(csv) lines = str_csv.split("\\n") name_url = r'first.csv' fs = open(name_url, 'w') for line in lines: fs.write(line + '\n') fs.close() download_csv(my_url) from collection import defaultdict my_result=defaultdict(list) with open('first.csv', 'rb') as csvfile: for row in csv.reader(csvfile, delimiter=','): my_result[age].append(name) print(zip(sorted((my_result.value(), my_result.key()))
'179': [-1, -1], '81': [1, -1], "161": [-1, 1], '97': [1, 1], '145': [-1, -1], '65': [1, 1], '129': [-1, 1], '113': [1, -1], '177': [-1, -1] } Genome = {} non_can = set([]) can = set([]) dn_count = defaultdict(int) def Genomictabulator(fasta): print >> sys.stderr, "Cargando genoma en la memoria RAM ...", f = open(fasta) for chrfa in SeqIO.parse(f, "fasta"): Genome[chrfa.id] = chrfa.seq print >> sys.stderr, "OK" f.close()
def not_game(): ''' 判断Win或游戏Gameover-->读取用户输入的动作(action) ''' response = defaultdict(lambda:state) # 默认当前状态,没有就当前状态的界面循环 response['Restart'],response['Exit'] = 'Init','Exit' return response[action]