Différence entre interpoler () et fillna () chez les pandas

9

Depuis interpoler et fillna méthode fait le même travail de remplissage na valeurs. Quelle est la différence fondamentale entre les deux. Quelle est l'importance d'avoir ces deux méthodes différentes ?? Quelqu'un peut-il m'expliquer en termes simples. J'ai déjà visité la documentation officielle et je voulais connaître la différence

Sid_K
la source

Réponses:

12

fillnaremplit les NaNvaleurs avec un nombre donné avec lequel vous souhaitez remplacer. Il vous donne une option à remplir en fonction de l'index des lignes d'un pd.DataFrameou sur le nom des colonnes sous la forme d'un python dict.

Mais interpolatec'est un dieu à remplir. Il vous donne la flexibilité de remplir les valeurs manquantes avec de nombreux types d'interpolations entre les valeurs comme linéaire (qui fillnane fournit pas) dans l'exemple ci-dessous et bien d'autres interpolations possibles. Par exemple

>> import pandas as pd, numpy as np
>> df = pd.Series([1, np.nan, np.nan, 3])
>> df.interpolate()
0    1.000000
1    1.666667
2    2.333333
3    3.000000
dtype: float64

La documentation des pandas sur fillna et interpolate est très claire à ce sujet.

Kiritee Gak
la source
Compris. Supposons que si je souhaite remplir uniquement certaines valeurs spécifiques (qui peuvent être dans la plage ou sans plage), cela peut également être fait en utilisant l'interpolation. Droite ?
Sid_K
Remplit-il avec des valeurs spécifiques ou remplit-il des valeurs spécifiques comme dans les cellules d'un DataFrame?
Kiritee Gak
remplir des valeurs spécifiques dans la cellule à certains emplacements particuliers uniquement mais à la fois de nombreuses valeurs doivent être remplies ou dans une certaine plage
Sid_K