一、问题
在将表格数据转为pandas,可能会遇到这种的excel类型
就是他的员工编号和姓名是一个合并单元格,这就导致了,pandas只会读取第一行数据,后面就都是null,但是旁边的其他几个列会存在数据,需要对excel或者pandas进行批处理,使得每一行都有姓名编号
二、解决方法
pandas前向填充
# 前向填充姓名和ID列(假设姓名在A列,ID在B列)
df['姓名'] = df['姓名'].ffill()
df['员工编号'] = df['员工编号'].ffill()
print(df)
用前一个有效值填充当前列的空白值(即 前向填充,Forward Fill)。
它会从上往下查找,遇到空值(NaN)时,用前一个非空值填充当前空值。
.bfill()(Backward Fill):从下往上填充,用后一个非空值填充当前空值。
适用场景:
Excel 合并单元格导致 Pandas 读取时部分行为 NaN。
时间序列数据缺失值填充(如股票数据、传感器数据)。