Mettre le nombre de chaque bigram en commun nouvelle colonne
PierrotLeFou -
Bonjour,
Je suis assez nouvelle en code et j'aimerais faire une fonction qui permet de calculer le nombre de bigrams communs entre une ligne i et ligne i + 1, pour chaque ligne de mon dataset, puis mettre le résultat dans une nouvelle colonne (à partir de i+1).
J'ai fait le code suivant mais il ne marche pas:
def common_bigram(df):
result=[]
common_bigram=0
for i in range (267):
x= df[i]
x1= df[i+1]
for bigram in x:
if bigram in x1:
common_bigram +=1
else:
pass
result.append(common_bigram)
print(common_bigram(df["bigrams"]))
Si quelqu'un peut m'aider là-dessus, je bloque vraiment..
Merci
- Mettre le nombre de chaque bigram en commun nouvelle colonne
- Darkino nouvelle adresse - Guide
- Déplacer colonne excel - Guide
- Trier colonne excel - Guide
- Extreme download nouvelle adresse - Accueil - Outils
- Colonne word - Guide
3 réponses
Ton append est en colonne 9 alors qu'il devrait être en colonne 13 à l'endroit où tu incrémente ta variable.
Tu n'as pas besoin du else: pass
On n'est pas obligé d'avoir un else sur un if. Par défaut, si la condition est fausse, on ne fait rien.
Merci, mais comment je peux faire que pour chaque ligne consécutive i, et i +1, le code calcule le nombre de bigrams en commun et le met dans une nouvelle colonne? Cela ne marche toujours pas
Tu fais un append des résultats dans une liste. À quoi cette liste était-elle censée te servir?
Ensuite, dans chaque ligne tu as des bigrammes, et tu veux y ajouter autre chose?
Tu pourrais parcourir à nouveau ton dataset à partir de la ligne d'indice 1 au lieu de 0.
Tu pourrais faire un append de la position (par exemple) de la valeur dans i-1 du résultat dans la ligne i de ton dataset.