def g_n(): """ Iterates on all files annotated with Commitment Yields annotation objects """ for gname in os.listdir(sroot): if gname != 's1-league1-game1': continue if gname.startswith('s1'): p0 = os.path.join(sroot, gname) p1 = os.path.join(p0, 'commitment', 'jperret') p2 = os.path.join(p0, 'commitment', 'sa') if os.path.isdir(p1) and os.path.isdir(p2): for fname in os.listdir(p1): if fname.endswith('.aa'): bname = fname[:-3] #~ if bname == 's1-league1-game2_07': #~ continue a = ad.Annotations(os.path.join(p1, fname)) a.load_text(os.path.join(p0, 'unannotated', bname+'.ac')) a.gen_full_struct() a.commitments = list(u for u in a.units if u.type == 'Commitment') a2 = ad.Annotations(os.path.join(p2, fname)) a2.load_text(os.path.join(p0, 'unannotated', bname+'.ac')) a2.gen_full_struct() a2.commitments = list(u for u in a2.units if u.type == 'Commitment') yield bname, (a, a2)
def g_n(): # Season loop for sname in seasons: # Game loop for gname in os.listdir(os.path.join(sroot, sname)): if gname.startswith(('s1','s2','pilot')): p0 = os.path.join(sroot, sname, gname) if 'discourse' in os.listdir(p0): p1 = os.path.join(p0, 'discourse') # Stage loop for tname in stages: if tname in os.listdir(p1): p2 = os.path.join(p1, tname) if not os.listdir(p2): continue # Annotation file loop for fname in os.listdir(p2): if fname.endswith('.aa'): bname = fname[:-3] a = ad.Annotations(os.path.join(p2, fname)) a.gen_full_struct() a.load_text(os.path.join(p0, 'unannotated', bname+'.ac')) yield bname, a # Only check first found stage break
def load_anno(cf, name): # Season loop for sname in seasons: # Game loop for gname in os.listdir(os.path.join(cf.src, sname)): if gname == name: p0 = os.path.join(cf.src, sname, gname) pc = os.path.join(p0, 'commitment') if 'commitment' not in os.listdir(p0): os.mkdir(pc) if cf.name not in os.listdir(pc): os.mkdir(os.path.join(pc, cf.name)) for fname in sorted(os.listdir(os.path.join(p0, 'unannotated'))): if fname.endswith('.aa'): bname = fname[:-3] base = os.path.join(p0, 'unannotated', fname) a = ad.Annotations(base) a.gen_turns() a.load_text( os.path.join(p0, 'unannotated', bname + '.ac')) yield a, base, os.path.join(p0, 'commitment', cf.name, fname) break else: continue break else: print('Game not found :', name)
def g_n(): """ Iterates on all files annotated with Commitment Yields annotation objects """ for gname in os.listdir(sroot): if gname.startswith('s1'): p0 = os.path.join(sroot, gname) if 'commitment' in os.listdir(p0): p1 = os.path.join(p0, 'commitment') for fname in os.listdir(p1): if fname.endswith('.aa'): bname = fname[:-3] #~ if bname == 's1-league1-game2_07': a = ad.Annotations(os.path.join(p1, fname)) a.gen_full_struct() yield bname, a
def g_n(): """ Iterates on all files annotated with Commitment Yields annotation objects """ for gname in os.listdir(sroot): if gname.startswith('s1'): p0 = os.path.join(sroot, gname) p1 = os.path.join(p0, 'commitment', 'jperret') if os.path.isdir(p1): for fname in os.listdir(p1): if fname.endswith('.aa'): bname = fname[:-3] #~ if bname == 's1-league1-game2_07': #~ continue a = ad.Annotations(os.path.join(p1, fname)) a.load_text( os.path.join(p0, 'unannotated', bname + '.ac')) a.gen_struct() yield bname, a
with open(name, 'w') as f: # Header for k in range(3): f.write('\t'.join([t[k] for t in featdef]) + '\n') # Instances for r in idata: f.write('\t'.join(map(str, r)) + '\n') #~ pa = '/home/arthur/These/Master/Stac/data/socl-season1/s1-league1-game1/unannotated/s1-league1-game1_03.aa' pa = '/home/arthur/These/Master/Stac/data/socl-season1/s1-league1-game1/discourse/SILVER/s1-league1-game1_03.aa' pr = '/home/arthur/These/Master/Stac/data/socl-season1/s1-league1-game1/unannotated/s1-league1-game1_03.ac' pp = '/home/arthur/These/Master/Stac/data/socl-season1/s1-league1-game1/parsed/stanford-corenlp/s1-league1-game1_03.xml' fres = '../res/custom.tab' an = ad.Annotations(pa, 'discourse', 's1-league1-game1_03') an.load_text(pr) an.load_parsed(pp) an.gen_full_struct() sl, pl, ml, cl = fg.pre_features() def tri(name, suffix=''): return (name + suffix, 'c' if name in cl else 'd', 'meta' if name in ml else '') t_feat = [] #~ for nl, s in ((pl, ''), (sl, '_1'), (sl, '_2')): for nl, s in ((pl, ''), (sl, '_DU1'), (sl, '_DU2')):
# Segmentation comparator import annodata as ad pa = '/home/arthur/These/Master/Stac/data/socl-season1/s1-league1-game1/unannotated/s1-league1-game1_03.aa' pb = '/home/arthur/These/Master/Stac/data/socl-season1/s1-league1-game1/discourse/SILVER/s1-league1-game1_03.aa' pr = '/home/arthur/These/Master/Stac/data/socl-season1/s1-league1-game1/unannotated/s1-league1-game1_03.ac' aa = ad.Annotations(pa) aa.load_text(pr) aa.gen_full_struct() ab = ad.Annotations(pb) ab.load_text(pr) ab.gen_full_struct() sa, sb = (set(s.id for s in an.segments) for an in (aa, ab)) print(sa - sb) print(sb - sa)