ffill() 使用方法介绍
参考链接:
https://www.geeksforgeeks.org/python-pandas-dataframe-ffill/
# importing pandas as pd
import pandas as pd
# Creating the dataframe
df=pd.DataFrame({"A":[5,3,None,4],
"B":[None,2,4,3],
"C":[4,3,8,5],
"D":[5,4,2,None]})
# Print the dataframe
df
按行填充
引用上一行的值填充:缺点是无法填充第一行缺失值
#按axis = 0填充
df.ffill(axis = 0)
按列填充
引用上一列的值填充:缺点是无法填充第一列缺失值
#按axis = 1填充
df.ffill(axis = 1)
groupby() + ffill()
先建立一个DF, 有城市名称和邮编号,其中邮编部分缺失,需要根据城市名称去进行填充缺失值。
df=pd.DataFrame({"city":['Beijing','Shanghai','Tianjing','Beijing','Shanghai'],
"zip_code":[100000,200000,300000,None,None],
"UID":[1,2,3,4,5],
"Order_ID":[100,111,223,333,4444]})
df
#groupby 和fill 组合使用,返回的结果可见缺失值已经补充完成
df.groupby('city')['zip_code'].ffill()
#替换掉原来的列
df['zip_code']=df.groupby('city')['zip_code'].ffill()
df
缺失值已经填补成功