2015-12-02 8 views

Répondre

26

Vous pouvez utiliser une compréhension list:

df.columns = [str(col) + '_x' for col in df.columns] 

Il y a aussi des méthodes intégrées comme .add_suffix() et add_prefix comme mentionné dans une autre réponse.

+0

Je reçois cette erreur: TypeError: type (s) d'opérande non pris en charge pour +: 'numpy.int64' et 'str'. Voici comment j'applique votre code: featuresA = [col + '_x' pour col dans group.to_frame(). Columns] –

+0

On dirait que vos noms de colonne sont des entiers, donc il faut d'abord convertir 'str'. Mis à jour en conséquence – Stefan

+0

type (group.to_frame()) donne pandas.core.frame.DataFrame, donc ne comprends pas pourquoi l'erreur mentionne numpy array –

53

Ce qui suit est la façon la plus agréable d'ajouter un suffixe à mon avis.

df = df.add_suffix('_some_suffix') 

Comme il est une fonction qui est appelée dataframe et retourne dataframe - vous pouvez l'utiliser dans la chaîne des appels.

+6

Vous pouvez utiliser add_prefix si vous voulez ajouter un préfixe aux noms. – Jorge

+1

Dommage que cela ne puisse pas être mutable (c'est-à-dire qu'il n'y a pas d'option de paramètre 'inplace = True'). Sinon, parfait. – ijoseph