Diferença entre interpolar () e fillna () em pandas

9

Como o método interpolar e fillna faz o mesmo trabalho de preencher um valor. Qual é a diferença básica entre os dois. Qual é o significado de ter esses dois métodos diferentes? Alguém pode me explicar em termos leigos. Eu já visitei a documentação oficial e queria saber a diferença

Sid_K
fonte

Respostas:

12

fillnapreenche os NaNvalores com um determinado número pelo qual você deseja substituir. Ele oferece a opção de preencher de acordo com o índice de linhas de pd.DataFrameou no nome das colunas na forma de um python dict.

Mas interpolateé um deus no preenchimento. Ele oferece a flexibilidade de preencher os valores ausentes com muitos tipos de interpolações entre os valores como linear (que fillnanão fornece) no exemplo fornecido abaixo e muitas outras interpolações possíveis. Por exemplo

>> 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

A documentação do Pandas sobre fillna e interpolar é muito clara sobre isso.

Kiritee Gak
fonte
Entendido. Suponha que, se eu quiser preencher apenas alguns valores específicos (podem estar dentro ou fora do intervalo), isso também pode ser feito usando interpolação. Certo ?
23417 Sid_K
É preenchendo com valores específicos ou preenchendo valores específicos como nas células de um DataFrame?
Kiritee Gak
preenchendo valores específicos na célula a apenas alguns locais específicos, mas em um momento muitos valores devem ser preenchidos ou em alguma faixa
Sid_K