Les Pandas ne fillna() à la place

Je suis en train de remplir le NAs avec "" sur 4 colonnes spécifiques dans un bloc de données qui sont de la chaîne/types d'objet. Je peux attribuer ces colonnes à une nouvelle variable que je fillna(), mais quand je fillna() place les données sous-jacentes ne change pas.

a_n6 = a_n6[["PROV LAST", "PROV FIRST", "PROV MID", "SPEC NM"]].fillna("")
a_n6

me donne:

<class 'pandas.core.frame.DataFrame'>
Int64Index: 1542 entries, 0 to 3611
Data columns (total 4 columns):
PROV LAST     1542  non-null values
PROV FIRST    1542  non-null values
PROV MID      1542  non-null values
SPEC NM       1542  non-null values
dtypes: object(4)

mais

a_n6[["PROV LAST", "PROV FIRST", "PROV MID", "SPEC NM"]].fillna("", inplace=True)
a_n6

me donne:

<class 'pandas.core.frame.DataFrame'>
Int64Index: 1542 entries, 0 to 3611
Data columns (total 7 columns):
NPI           1103  non-null values
PIN           1542  non-null values
PROV FIRST    1541  non-null values
PROV LAST     1542  non-null values
PROV MID      1316  non-null values
SPEC NM       1541  non-null values
flag          439  non-null values
dtypes: float64(2), int64(1), object(4)

C'est seulement une ligne, mais toujours frustrant. Ce que je fais mal?

J'ai aussi rencontré quelques fonctions où inplace=True semble être ignoré. Alors que ce n'est pas le problème dans votre cas, il est bon de garder à l'esprit lors de la résolution.

OriginalL'auteur Beau Bristow | 2014-02-24