You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pandas将Excel格式数据清洗转换为数据库入库格式的可行性咨询

这个需求完全可以通过pandas实现,无需借助其他工具,实现代码如下:

import pandas as pd

# 构造示例DataFrame
d = {'Date' : ["Spiderman total",
"Division A",
"Division B",
"Division C",
"Superman total",
"Division A",
"Division B",
"Division C"
],
'1/4/20': [3,1,2,0,10,5,3,2],
'1/11/20':[5,2,1,2,8,4,4,0],
'1/18/20': [15,7,7,1,20,10,0,10]
}
df = pd.DataFrame(data=d)

# 1. 提取业务线名称,向下填充到对应分部行
df['Business'] = df['Date'].where(df['Date'].str.contains('total')).ffill().str.replace(' total', '')
# 2. 过滤掉合计行,仅保留分部数据
df = df[~df['Date'].str.contains('total')].copy()
# 3. 提取分部标识
df['Division'] = df['Date'].str.replace('Division ', '')
# 4. 宽表转长表,把所有日期列统一转为行格式
res = pd.melt(
    df,
    id_vars=['Business', 'Division'],
    var_name='date',
    value_name='totals'
)
# 调整列顺序匹配需求格式
res = res[['date', 'Business', 'Division', 'totals']].reset_index(drop=True)

上述代码会自动适配所有日期列,无需手动新增修改逻辑,最终输出的res就是你需要的目标格式。

内容的提问来源于stack exchange,提问作者Seph77

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 09:24:01