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

如何拆分大型DataFrame?将1556640行DataFrame拆分为1081个小DataFrame

解决DataFrame拆分需求的方案

Hey Gilles, 我来帮你搞定这个DataFrame拆分的问题!

我先帮你捋一下拆分逻辑:你提到要把1556640行的DataFrame拆成1081个小DataFrame,我注意到你写的规则里有个小细节——如果按x1=x.iloc[1441:2880]这种带间隔的方式拆分,会导致中间的每个小DataFrame少一行,最后总行数也对不上原始数据。结合1081×1440=1556640这个完美匹配的数字来看,应该是笔误,正确的拆分应该是连续无间隔的1440行一个chunk,这样刚好覆盖所有行。

下面是实现这个需求的Python代码(假设你的原始DataFrame名为df):

import pandas as pd

# 定义每个小DataFrame的行数和总个数
chunk_size = 1440
total_chunks = 1081

# 用字典存储拆分后的所有小DataFrame,方便按x0、x1...访问
split_dataframes = {}

for i in range(total_chunks):
    # 计算每个chunk的起始和结束索引
    start_idx = i * chunk_size
    end_idx = start_idx + chunk_size
    # 拆分并存储到字典中
    split_dataframes[f'x{i}'] = df.iloc[start_idx:end_idx]

代码说明:

  • 我们用字典split_dataframes来保存所有拆分后的小DataFrame,键名就是你要的x0、x1直到x1080(共1081个)
  • iloc[start_idx:end_idx]是pandas的位置索引切片,左闭右开,所以每个切片刚好包含1440行
  • 最后一个chunk的end_idx会是1081×1440=1556640,刚好等于原始DataFrame的总行数,所以会自动取到最后一行,完美覆盖所有数据

如果你确实需要按你最初写的带间隔的规则拆分(虽然这样会有数据丢失或重复的问题),可以告诉我,我再帮你调整代码~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 06:42:52