2015-12-17 1 views
-1

Je regarde une table d'avis de Yelp de Yelp (data_clean est mon pandas.dataframe). Ma colonne 'étoiles' est un texte mixte et des entiers. Je veux convertir les valeurs de texte en entiers. J'essaie le ci-dessous. Il ne se trompe pas mais ne fonctionne pas non plus!Convertir des valeurs dans une colonne de données lorsque certains types de données (pandas)

data_clean.stars.replace([type(data_clean.stars)=='string'],[data_clean['stars'].astype(int)]) 

Aide appréciée!

+0

Bienvenue dans StackOverflow. S'il vous plaît lire sur la façon de poser de bonnes questions (lien ci-dessous). Vous voudrez nous donner assez de détails pour savoir de quoi vous parlez - à quoi ressemblent vos données, quel résultat voulez-vous, qu'est-ce que vous obtenez avec ce que vous avez essayé - si vous espérez obtenir un répondre. Voir ici: http://stackoverflow.com/help/how-to-ask – itzy

+0

Pour commencer, 'type (...)' ne sera jamais une chaîne appelée '' string''. http://stackoverflow.com/questions/152580/whats-the-canonical-way-to-check-for-type-in-python – itzy

Répondre

0

Essayez:

data_clean['stars'] = [int(x) for x in data_clean['stars']] 

Cela échouera si vous avez un élément qui ne int (élément), par exemple des chaînes qui ne sont pas des chiffres, dans ce cas, vous devez utiliser une sorte d'essai et sauf stratégie en fonction de qu'est-ce que vous voulez exactement faire avec ces éléments.