pandas读取表格智能跳过表头
1. 找到表头所在行
我们可以通过表头字段来判断表头所在行,即先逐行读取内容然后合并成字符串,接着判断某特定内容是否在字符串内,如果在则判定为表头所在行。
2. 读取表格跳过表头
在上一步我们知道了表头所在的位置,使用 pandas.read_excel() 的时候指定表头或跳过即可。
我们以表头包含“票据包号”和“子票区间”字段为例,最终代码:
import pandas as pd
def find_table_header_index(df: pd.DataFrame) -> int:
"""找到表头所在行"""
for index, row in df.iterrows():
row_str = ",".join(str(x) for x in row.to_list())
if "票据包号" in row_str and "子票区间" in row_str:
return index
return -1
def demo1():
filename = "./查重数据.xlsx"
df = pd.read_excel(filename, header=None)
index = find_table_header_index(df)
df = pd.read_excel(filename, skiprows=index)
有了计划记得推动,不要原地踏步。