2017-10-16 14 views
-1

Quelqu'un peut-il m'expliquer pourquoi ce code ne devrait pas fonctionner?Les pandas appliquent lambda à l'ensemble de la base de données

wordsCount = {} 

def addWord(x): 
    print(x) 

df.apply(addWord(x)) 

Il renvoie l'erreur: TypeError: ("objet 'NoneType' est pas appelable", 'eu lieu à l'index 0') La df contient dataframe une valeur Aucun dans une cellule. Mon intention est d'appliquer une fonction à toute valeur non-None.

+0

'.Appliquer()' attend une fonction, mais vous faisant passer la valeur de retour en appelant 'addword (x)', qui est None puisque aucune valeur de retour est spécifié dans la fonction 'addWord'. Passez simplement 'addWord' sans la parenthèse. – Craig

+0

Ok merci. Donc maintenant je découvre qu'avec appliquer je ne peux que parcourir les colonnes. Qu'est-ce que je veux parcourir sur chaque élément de la base de données? – user1315621

+0

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.applymap.html – Craig

Répondre