Beispiel #1
0
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)
Beispiel #2
0
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
Beispiel #3
0
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)
Beispiel #4
0
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
Beispiel #5
0
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
Beispiel #6
0
    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')):
Beispiel #7
0
# 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)