0
votes

pandas.series.replace () surplace = true ne fonctionne pas

J'ai un pandas.series des , qui contient tout le texte:

 Entrez la description de l'image ici

Je veux supprimer toute ponctuation, alors j'ai procédé à ce qui suit: xxx

Cependant, j'ai obtenu un "typeError: remplacer () ne prend aucun argument de mots clés" .

Comment puis-je le réparer? Aussi, existe-t-il un moyen plus efficace de supprimer la ponctuation pour toutes les lignes de texte dans une série?


1 commentaires

Vous utilisez str.replace, pas pandas.series.replace ..


3 Réponses :


0
votes

Vous pouvez créer un dictionnaire d'éléments à remplacer et l'utiliser dans pandas.dataframe.replace xxx

retour de inplace = true est Aucun (c.-à-d. Pas besoin d'assigner lors de l'utilisation de remplacement surplacée) xxx


0 commentaires

0
votes

Tout d'abord, vous avez une erreur d'indentation dans l'intérieur de la boucle. Deuxièmement, compte tenu des empreintes appropriées, le problème de votre problème est que la méthode .ePlace () pour le fichier de données et pour les chaînes a des signatures de fonction différentes. Ce que vous voulez faire, c'est utiliser la méthode de remplacement de Dataframe (), mais vous utilisez la méthode de remplacement de la chaîne (). Vous pouvez vérifier ici: https://stackoverflow.com/a/50843478/9851541 Ou, vous pouvez également vérifier Comment utiliser la méthode Remplacer () avec des arguments de mots clés pour remplacer les chaînes vides pour votre problème. J'espère que cela vous aidera!


0 commentaires

0
votes

Mon interprétation de votre question pourrait être incorrecte, mais si vous cyclistes via une liste de caractères de ponctuation dans punc et que vous voulez simplement les supprimer tout en gardant le reste du texte, je Pensez que vous pouvez faire quelque chose de plus simple comme ce qui suit: xxx

comme vous le savez probablement, remplacer est la méthode standard Python String pour remplacer une série de caractères avec un autre. Par exemple: xxx

renvoie 'azc'

Lorsque vous utilisez série.str.replace () Vous utilisez cette même chaîne Remplacer la méthode, mais maintenant, il sera appliqué à chaque élément de la série. Afaik, toutes les méthodes de chaîne peuvent être appliquées à une série à une série utilisant cette même syntaxe série.str.some_string_method ()


2 commentaires

En outre, ça vous dérange d'expliquer un peu pourquoi cela fonctionne avec des pandas.Series? Pourquoi Python peut-il l'interpréter comme chaque élément de chaque rangée? Parce que cela ne fonctionne pas si je vous jette chaque rangée, c'est-à-dire si chaque ligne devient une liste ...


Mise à jour de la réponse avec quelques explications. S'il vous plaît n'oubliez pas de le marquer correctement si vous êtes satisfait de ma réponse!