求助:关于pandas读取多级表头(合并单元格)数据填充问题
本帖最后由 往北向南 于 2020-8-24 17:33 编辑1、如下图,原始数据样式,标黄区域为合并单元格的二级表头
https://s1.ax1x.com/2020/08/24/dr6xQx.png
2、需求:表头为1行,红色区域(空值)不能被修改填充
https://s1.ax1x.com/2020/08/24/drchAe.png
3、尝试:数据读取后通过fillna处理,空值信息被改写(原始数据红色区域)
https://s1.ax1x.com/2020/08/24/drgy5Q.png
希望图片能上去{:10_254:} 你是想要这样的效果么?就表头几个值,完全可以自己修改下,不就不影响下面数据中的nan了
import pandas as pd
a=pd.read_excel('1.xlsx',header=1)
a.columns=['姓名','班级','年龄','语文','数学','英语']
print(a)
疾风怪盗 发表于 2020-8-24 17:50
你是想要这样的效果么?就表头几个值,完全可以自己修改下,不就不影响下面数据中的nan了
这只是一个示例,其实原始数据表土有68列,这种重新定义感觉有点长。还有刚开始脚本是按照序号的来的,后面表中间茶了一列就不能用啦 本帖最后由 疾风怪盗 于 2020-8-24 18:25 编辑
往北向南 发表于 2020-8-24 17:55
这只是一个示例,其实原始数据表土有68列,这种重新定义感觉有点长。还有刚开始脚本是按照序号的来的,后 ...
import pandas as pd
a=pd.read_excel('1.xlsx',header=None)
#a.columns=['姓名','班级','年龄','语文','数学','英语']
a.loc=a.loc.fillna(method='ffill')
a.loc=a.loc.fillna(method='ffill')
print(a)
那这样呢? 疾风怪盗 发表于 2020-8-24 18:22
那这样呢?
感谢,此方法可行,指定行范围进行填充
a.loc=a.loc.fillna(method='ffill')
https://s1.ax1x.com/2020/08/25/dcu2Fg.png
页:
[1]