You need to enable JavaScript to run this app. 如何用pandas创建日期为一级、患者为二级的multi level index DataFrame
优惠活动
大模型
产品
解决方案
定价
更多

如何用pandas创建日期为一级、患者为二级的multi level index DataFrame

多层索引DataFrame实现方案

直接使用pandas内置的MultiIndex工具就能快速生成符合要求的双层索引结构,完全匹配你想要的“一行核心代码完成索引构建”的需求,不需要手动循环拼接索引条目。

基于现有代码的改造逻辑

保留你已经写好的日期索引生成部分,仅需替换DataFrame初始化时的索引参数即可,参考代码如下:

# 保留原有日期索引生成逻辑
factor_index = pd.date_range(start=startDate, end=endDate)
factor_index.name = 'Date'
# 核心:生成日期与患者列表的交叉双层索引
# 替换为你实际准备好的患者列表变量,例如 patient_list
multi_index = pd.MultiIndex.from_product(
    [factor_index, patient_list],
    names=['Date', 'Patient']
)
# 基于生成的多层索引初始化空DataFrame
factorData = pd.DataFrame(index=multi_index)

注意事项

  • from_product方法会自动对传入的两个序列做全量笛卡尔组合,也就是每一个日期都会对应挂载列表内的全部患者作为二级索引,和你预期的结构完全一致,不需要手动写循环拼接条目。
  • 如果不同日期对应的患者列表存在差异(并非所有日期都包含全量患者),可以将from_product替换为pd.MultiIndex.from_arrays,手动传入一一匹配的日期序列、患者序列构建索引,操作效率同样很高。

索引构建完成后,可直接运行factorData.index查看返回的结构信息,确认两级索引的层级、名称符合预期后,再向DataFrame中填充对应的指标数据即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.04 03:54:03