je dispose d'un corpus constitué de 1000 alignements français et anglais.
Je dois faire une sélection d'alignements sur la base d'un mot simple (ou motif) suivi de sa categorie grammaticale, la fréquence minimale étant 50 occurrences.
Bon, j'ai parsé mon corpus avec treetagger, et maintenant je dispose de 1000 fichiers séparés contenant chacun un alignement, et je dispose toujours de mon corpus entier.
Faire la sélection d'alignements sur la base d'un mot simple avec catégorie grammaticale, je sais faire:
$ awk -F'\t' '$1 ~ /the$/ && $2 == "DT" \ ////// où the est le motif que je recherche et DT sa cat. gramm.
> { fname=FILENAME;
> sub(/.*_/, "", fname);
> sub(/.tag/, "", fname);
> sent=sprintf("%d", fname);
> print sent }' OO-enfr-E_ENFR_EN_al_????.tag | ////// où OO-enfr....tag est mon corpus parsé (1000 fichiers)
> while read sent;
> do
> awk -F'\t' -v s=$sent \
> 'NR == s { print "EN:" $2; print "FR:" $3 }' OO-enfr-E_ENFR_EN_al.txt ; ////// où OO-enfr....txt est mon corpus entier
> done
Mon problème est que je ne sais pas comment faire pour replacer mes fréquences d'occurrences dans chaque fichier séparé (ceux en .tag), vous me suivez?
si je n'avais pas à replacer la fréquence dans mes fichiers, je n'aurais qu'à ajouter:
Si le problème consiste a substituer "frequence1" par "frequence2" dans un ensemble de texte, je pense que la commande sed constitue la solution à vos problème.
De plus la commande grep peut fournir le nombre d'occurrence i.e "fréquence2" d'un mot donné sur un corpus donné.