ใช้ Series.interpolate() แบบ Default (Linear) เพื่อเติมค่า NaN โดยการประมาณค่าแบบเส้นตรงระหว่างจุดที่รู้ค่า
ตัวอย่างโค้ด
import pandas as pd
import numpy as np
d = pd.Series([10, 20, np.nan, 40, 50, np.nan, 70, np.nan, 90, 100])
print("Series...\n", d)
print("\nLinear Interpolation...\n", d.interpolate())
ผลลัพธ์
Series...
0 10.0
1 20.0
2 NaN
3 40.0
4 50.0
5 NaN
6 70.0
7 NaN
8 90.0
9 100.0
dtype: float64
Linear Interpolation...
0 10.0
1 20.0
2 30.0
3 40.0
4 50.0
5 60.0
6 70.0
7 80.0
8 90.0
9 100.0
dtype: float64
คำอธิบาย
- Linear Interpolation: วาดเส้นตรงระหว่างจุดที่รู้ค่า (20 และ 40 -> กลางคือ 30)
- ไม่ต้องระบุ
methodเพราะเป็น Default - เหมาะกับข้อมูลที่มีแนวโน้มเส้นตรงหรือ Time Series ทั่วไป