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

使用循环创建DataFrame时,能否在循环内指定索引名称?

解决方案

当然可以在循环过程中直接指定索引,有两种简洁的方式实现:

方法1:初始化DataFrame时预先设置索引

直接在创建空DataFrame的时候就把索引指定好,后续循环只需要填充列数据即可:

# 预先指定索引创建空DataFrame
regression_stats_df = pd.DataFrame(index=['Beta', 'Alpha', 'Rsqr'])

for i in all_perf_time_series:
    # 每次循环将结果赋值给对应列
    regression_stats_df[i] = stats.linregress(all_perf_time_series['Benchmark'], all_perf_time_series[i])[0:3]

方法2:每次添加列时构造带索引的Series

在给DataFrame添加列的时候,把回归结果包装成带指定索引的Series,这样每列数据都会自动匹配索引:

regression_stats_df = pd.DataFrame()

for i in all_perf_time_series:
    beta, alpha, rsqr = stats.linregress(all_perf_time_series['Benchmark'], all_perf_time_series[i])[0:3]
    # 构造带索引的Series并添加为列
    regression_stats_df[i] = pd.Series([beta, alpha, rsqr], index=['Beta', 'Alpha', 'Rsqr'])

这两种方式都能让你在循环过程中就完成索引的设置,不需要等到循环结束后再单独赋值索引。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 16:19:52