Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python Pandas - Điền giá trị NaN bằng nội suy đa thức (Polynomial Interpolation)


Để điền các giá trị NaN trong Pandas Series bằng phương pháp nội suy đa thức, sử dụng phương thức interpolate() với tham số method='polynomial' và chỉ định order (bậc đa thức).

Import thư viện:

import pandas as pd
import numpy as np

Tạo Series có giá trị NaN:

d = pd.Series([10, 20, np.nan, 65, 75, 85, np.nan, 100])

Thực hiện nội suy đa thức bậc 2:

d.interpolate(method='polynomial', order=2)

Ví dụ hoàn chỉnh

import pandas as pd
import numpy as np
d = pd.Series([10, 20, np.nan, 65, 75, 85, np.nan, 100])
print("Series...\n", d)
print("\nPolynomial Interpolation...\n", d.interpolate(method='polynomial', order=2))

Kết quả

Series...
0    10.0
1    20.0
2     NaN
3    65.0
4    75.0
5    85.0
6     NaN
7   100.0
dtype: float64
Polynomial Interpolation...
0    10.000000
1    20.000000
2    42.854015
3    65.000000
4    75.000000
5    85.000000
6    93.532847
7   100.000000
dtype: float64