Disons que j'ai un texte comme celui-ci:Nombre de fois par bigramme a été vu dans une liste jusqu'à un certain point
'he is hdajs asdas da he is not asd as da s i am a da daas you am a'
J'ai créé toutes les bigrammes de ce texte:
>>> bigrams_
[('he', 'is'), ('is', 'hdajs'), ('hdajs', 'asdas'), ('asdas', 'da'), ('da', 'he'), ('he', 'is'), ('is', 'not'), ('not', 'asd'), ('asd', 'as'), ('as', 'da'), ('da', 's'), ('s', 'i'), ('i', 'am'), ('am', 'a'), ('a', 'da'), ('da', 'daas'), ('daas', 'you'), ('you', 'am'), ('am', 'a')]
Maintenant, j'aime créer une nouvelle liste de bigrams où le premier élément de chaque bigram serait un index de position qui montre combien de fois un certain bigram du format ci-dessus a été vu jusqu'à un point dans le texte, et le second élément serait être le bigramme des mots de la liste initiale. Par exemple, dans la liste ci-dessus, le dernier élément ('am', 'a')
a été vu 2 fois, donc dans la nouvelle liste il correspondrait à ce bigram: (2, ('am', 'a'))
. Ce serait une façon concise de faire cela.
Comment est ' 'am' , 'a'' vu 3 fois? Cela ne se produit que deux fois dans votre texte, sauf s'il me manque quelque chose ici –
Vous avez raison. Mes excuses. Je voulais dire 2 fois. –
Sauf qu'il n'a été vu précédemment qu'une fois à droite, donc il devrait être '(1, ('am', 'a'))' - à moins que ce soit le nombre cumulé et que tout commence par '1'? –