【问题标题】:Split dataframe to sub dataframes and fill content according to the relevant dataframe?将数据框拆分为子数据框并根据相关数据框填充内容?
【发布时间】:2021-10-17 14:17:58
【问题描述】:

我有以下玩具数据框:

x  value      id
A  5           1
B  DE          1
C  False       1
D  yes         1
E  -0.9442     1
A  66          2
D  yes         2
E  -0.9442     2
F  Kuku        2
Z  1           2

等等。 对于每个 id,我们都有一些属性。 我想通过每个id 的属性“切片”它们(例如 id 1 具有 A、B、C、D 和 E 属性,id 2 具有 A、D、E、F 和 Z 属性。 我如何创建仅包含 A、B、C、D 和 E 属性、A、D、E、F 和 Z 属性的子数据框 等等 - 就像我将 使用适当的属性存储请求 ID?

我想要做的是通过 id 拆分整个数据框,然后提取每个数据框的属性。有没有更简单的方法可以做到这一点?

【问题讨论】:

    标签: python python-3.x pandas dataframe


    【解决方案1】:

    您可以创建由id 分组的x.groupby() 对象的字典,如下所示:

    x_df_dict = {a: b for a, b in df.groupby('id')['x']}
    

    然后,您可以通过id访问x的子数据帧(更准确地说是子系列),如下:

    print(x_df_dict[1])
    
    0    A
    1    B
    2    C
    3    D
    4    E
    Name: x, dtype: object
    
    print(x_df_dict[2])
    
    5    A
    6    D
    7    E
    8    F
    9    Z
    Name: x, dtype: object
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-24
      • 1970-01-01
      • 1970-01-01
      • 2015-11-14
      • 2020-01-08
      • 1970-01-01
      • 2023-03-14
      相关资源
      最近更新 更多