La méthode Str.replace renvoie une erreur d'attribut.
dc_listings['price'].str.replace(',', '')
AttributeError: Can only use .str accessor with string values, which use np.object_ dtype in pandas
Voici les 5 premières lignes de ma colonne de prix.
Ce débordement de pile thread recommande pour vérifier si ma colonne a des valeurs NAN mais que les valeurs de ma colonne ne sont pas NAN.
Comme l’erreur indique, vous ne pouvez utiliser que .str
avec des colonnes de chaîne et vous avez un float64
. Il n'y aura pas de virgule dans un float, donc ce que vous avez ne fera rien, mais en général, vous pouvez le lancer en premier:
dc_listings['price'].astype(str).str.replace...
Par exemple:
In [18]: df
Out[18]:
a b c d e
0 0.645821 0.152197 0.006956 0.600317 0.239679
1 0.865723 0.176842 0.226092 0.416990 0.290406
2 0.046243 0.931584 0.020109 0.374653 0.631048
3 0.544111 0.967388 0.526613 0.794931 0.066736
4 0.528742 0.670885 0.998077 0.293623 0.351879
In [19]: df['a'].astype(str).str.replace("5", " hi ")
Out[19]:
0 0.64 hi 8208 hi hi 4779467
1 0.86 hi 7231174332336
2 0.04624337481411367
3 0. hi 44111244991 hi 194
4 0. hi 287421814241892
Name: a, dtype: object
Si price est un type de type float 64, les données ne sont pas une chaîne. Vous pouvez essayer dc_listings['price'].apply(function)