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

如何通过循环从单个DataFrame拆分出多个子DataFrame

按Sub_Type拆分DataFrame的实现方案

原始DataFrame

TypeSub_TypeCount
AAA10
AAA5
BAA9
BBA4
BBA5
ABA2
BCA8
BCA5
ACA3

需求

按Sub_Type字段将上述DataFrame拆分为多个子DataFrame,每个子DataFrame对应唯一的Sub_Type值。

实现步骤

1. 准备数据(已有DataFrame可跳过)

通过pandas创建原始DataFrame:

import pandas as pd

data = {
    'Type': ['A', 'A', 'B', 'B', 'B', 'A', 'B', 'B', 'A'],
    'Sub_Type': ['AA', 'AA', 'AA', 'BA', 'BA', 'BA', 'CA', 'CA', 'CA'],
    'Count': [10, 5, 9, 4, 5, 2, 8, 5, 3]
}
df = pd.DataFrame(data)

2. 按Sub_Type拆分

利用pandas的groupby方法,将拆分后的子DataFrame存储到字典中,方便后续调用:

# 分组拆分,键为Sub_Type值,值为对应子DataFrame
sub_type_dfs = {st: group for st, group in df.groupby('Sub_Type')}

3. 获取子DataFrame

通过字典键直接获取对应子表:

  • 获取AA对应的子DataFrame:
print(sub_type_dfs['AA'])

输出:

TypeSub_TypeCount
AAA10
AAA5
BAA9
  • 获取BA对应的子DataFrame:
print(sub_type_dfs['BA'])

输出:

TypeSub_TypeCount
BBA4
BBA5
ABA2
  • 获取CA对应的子DataFrame:
print(sub_type_dfs['CA'])

输出:

TypeSub_TypeCount
BCA8
BCA5
ACA3

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 10:46:19