Visualisation et interprétation des données.
Ici, à l'aide de l'outil padagraph de P. Magistry, je vais créer une visualisation de mon corpus, pour amener à une analyse syntactico-sémantique.
#---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------#
*
#fonction de nettoyage
def clean(string):
string_bis=""
for char in string:
if re.match("\w",char):
string_bis+=char
return string_bis
def extract(fichier,rel_l,pos_l):
f=open(fic,"r",encoding="UTF-8")
liste=f.readlines()
f.close()
sent_buf = {}
couples = set()
lemma_pos_count={}
rel_dic={}
rel_buf={}
for rel in rel_l:
rel_dic[rel]=rel_dic.get(rel,{})
rel_buf[rel]=rel_buf.get(rel,{}).copy()
for pos in pos_l:
lemma_pos_count[pos]=lemma_pos_count.get(pos,{})
for line in liste:
if line.startswith("- "):
fields = re.findall("([^<]+)", line)
idx, word, lemma, tag, _, _, head, rel, _, _ = fields
lemma=clean(lemma)
sent_buf[idx] = (lemma,tag)
if tag in pos_l:
lemma_pos_count[tag][lemma]=lemma_pos_count[tag].get(lemma,0)+1
if rel in rel_l:
if tag == pos_l[1]:
rel_buf[rel][(lemma,tag),head]=rel_buf[rel].get(((lemma,tag), head),0)+1
if re.search("",line):
rels=[key for key in rel_buf.keys()]
for rel in rels:
couples=[couple for couple in rel_buf[rel].keys()]
for couple in couples:
if sent_buf[couple[1]][1]==pos_l[0]:
rel_dic[rel][(couple[0],sent_buf[couple[1]])]=rel_dic[rel].get((couple[0],sent_buf[couple[1]]),0)+rel_buf[rel][couple]
rel_buf[rel]={}
sent_buf = {}
return lemma_pos_count, rel_dic
def graphe_print(lemma_pos_count, rel_dic):
for pos in lemma_pos_count.keys():
print(f'@{pos}:#lemma,lemma,count\n')
for lemma in lemma_pos_count[pos].keys():
print(f'{pos}_{lemma},{lemma},{lemma_pos_count[pos][lemma]}\n')
for rel in rel_dic.keys():
print(f'_{rel},weight\n')
for couple in rel_dic[rel].keys():
print(f'{couple[1][0]},--,{couple[0][0]},{rel_dic[rel][couple]}\n')
return True
def bao4(fichier, rel_l, pos_l):
(points, lignes) = extract(fichier,rel_l,pos_l)
graphe_print(points, lignes)
return
if __name__ == "__main__":
pos_l=sys.argv[2:]
rel_l=[sys.argv[1]]
fic = "./sortieudpipe-slurp_3208-2021.xml"
bao4(fic,rel_l,pos_l)
python3 bao4.py analyse_BAO2 relation GOV DEP | curl -X POST -H 'Content-Type: text/csv' --data-binary @- "https://padagraph.magistry.fr/post_csv/nom_de_graphe"
return script
Je m'attendais à voir une année teintée du covid, des annulations et des décalages. Mais au final, en regardant la relation de modifieur, NOM ADJ, on remarque que les jeux Olympiques ont été surtout mis en avant par les aspects de la réussite. Cette année, les évènements sportifs ont pu reprendre, il est probable que les médias ont préféré mettre l'accent sur cela plutôt que la crise sanitaire.