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

如何通过循环高效调用存储过程生成多个DataFrame?

高效实现方案

当然可以通过循环简化重复代码,更推荐用列表或字典存储生成的DataFrame——相比创建match1至match10这类零散变量,集合类存储方式更便于后续批量操作(比如合并、遍历处理)。

方案一:列表存储结果

用列表按顺序保存每个日期对应的DataFrame,索引对应原手动命名的序号(注意列表索引从0开始):

matches = []
for date in listOfDates:
    df = sp_data(startDate=date, endDate=date)
    matches.append(df)

访问示例:matches[0]对应原match1,matches[9]对应原match10。

方案二:字典存储结果(带日期标识)

如果需要通过日期快速定位对应DataFrame,用字典以日期字符串为键存储,可读性更强:

matches_dict = {}
for date in listOfDates:
    date_key = str(date)
    matches_dict[date_key] = sp_data(startDate=date, endDate=date)

访问示例:matches_dict['20220524']直接获取对应日期的DataFrame。

进阶简化:列表推导式

追求代码简洁的话,可通过列表推导式一行完成列表创建:

matches = [sp_data(startDate=date, endDate=date) for date in listOfDates]

额外实用技巧

若后续需要合并所有DataFrame为一张大表,直接调用pandas.concat()即可,无需逐个处理零散变量:

import pandas as pd
combined_df = pd.concat(matches, ignore_index=True)

内容的提问来源于stack exchange,提问作者K.Best

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 09:50:42