如何从第一行到包含特定值的行对每个组中的行进行切片?

京东

我有一个像这样的数据框:

df_1 = pd.DataFrame({
    'ID' : ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'C', 'C', 'C', 'C', 'C'],
    'VAL' : ['shoes', 'flowers', 'chairs', 'apples', 'dice', 'shoes', 'apples',
             'curtain', 'sand', 'socks', 'necklacs', 'tables', 'dishes', 'apples'],
    'SEQ' : [0, 1, 2, 3, 4, 0, 1, 2, 3, 0, 1, 2, 3, 4]
})

   ID       VAL  SEQ
0   A     shoes    0
1   A   flowers    1
2   A    chairs    2
3   A    apples    3
4   A      dice    4
5   B     shoes    0
6   B    apples    1
7   B   curtain    2
8   B      sand    3
9   C     socks    0
10  C  necklacs    1
11  C    tables    2
12  C    dishes    3
13  C    apples    4

我想将行切片到一个值,例如,将每个ID组中的所有行切片apple

Out[110]: 
   ID       VAL  SEQ
0   A     shoes    0
1   A   flowers    1
2   A    chairs    2
3   A    apples    3
4   B     shoes    0
5   B    apples    1
6   C     socks    0
7   C  necklacs    1
8   C    tables    2
9   C    dishes    3
10  C    apples    4
海盗

idxmaxgroupbyconcat

pd.concat([
    d.loc[:d.VAL.eq('apples').idxmax()]
    for _, d in df_1.groupby('ID')
])

   ID       VAL  SEQ
0   A     shoes    0
1   A   flowers    1
2   A    chairs    2
3   A    apples    3
5   B     shoes    0
6   B    apples    1
9   C     socks    0
10  C  necklacs    1
11  C    tables    2
12  C    dishes    3
13  C    apples    4

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据组的第一行对组中的每一行进行突变

使用'with open'和'readline'仅对文件的最后一行进行切片

Oracle SQL:根据每个分区中的第一行对 PARTITION BY 组进行进一步排序

如何为熊猫multiindex中每个零级组的第一行分配值

给定TF2.1中每一行的起始索引,如何对张量进行切片?

如何切片数组以排除一行?

如何为具有不同颜色的每一行绘制特定 DataFrame 的切片?

如何对numpy数组中的第一行进行排序并对第二行进行排序?

如何仅返回组中第一行的值

如何从python中的文件中获取一行的多个切片?

如何根据第一行中的信息对一堆行进行分组?

如何切片数组引用并在一行中返回数组引用?

用第一行值替换每个组中的行。熊猫集团

熊猫为每个值组选择第一行

如果值大于上一行,如何删除每个组中的最后一行?

在MySQL中为每个组选择第一行?

在groupby中循环,并更改每个组的第一行

在sql中选择每个组中的第一行

在cloudwatch中为每个组选择第一行

获得每个组的第一行

将 Pandas 中每个组的给定列的第一行值替换为 NaN

如何从第一行到特定行获取数据

如何根据(第一行的值 + X)按组对数据表进行子集

如何在每个组的多索引数据框中删除第一行?

如何获取行切片包含单个值(0)的行索引

如何从每个主题的第一行中减去行?

从每个组中删除第一行和最后一行

熊猫Nth最后一行切片

如何提取 R 中第一行包含特定值的数据框的所有列