当前位置: 首页 > 知识库问答 >
问题:

使用Pandas数据帧进行多参数分组

司马狐若
2023-03-14

我有一个数据帧,我想按两个参数分组(1)相同的第一列中的连续编号和(2)第二列中的匹配值

数据帧:

In [20]: import pandas as pd

In [21]: df1 = pd.DataFrame ({ "res": [30, 31, 35, 36], "ss": ["H", "H", "H", "E"], "AA": ["A", "B", "C", "D"]})

In [22]: df1
Out[22]:
   res ss AA
0  30  H  A
1  31  H  B
2  35  H  C
3  36  E  D

组2:(35,H,C)

第3组:(36,E,D)

组1包括前2行,因为30和31是连续的,第二列匹配。创建组2是因为Col1中的31和35不是连续的。创建组3是因为H和E不匹配。

在pandas groupby中对列表中的行进行分组

我很感谢你给我的建议

共有1个答案

程景胜
2023-03-14

我对你的意思有点放肆。如果我理解正确,请告诉我。

import pandas as pd

df1 = pd.DataFrame ({"res": [30, 31, 35, 36],
                     "ss": ["H", "H", "H", "E"],
                     "AA": ["A", "C", "D", "B"]})  # I made 'F' a 'B'

df1

DF1如下所示:

  AA  res ss
0  A   30  H
1  C   31  H
2  D   35  H
3  B   36  E

我相信您只是想要sort而不是groupby

print df1.sort_values(['AA', 'res'])
  AA  res ss
0  A   30  H
3  B   36  E
1  C   31  H
2  D   35  H

然而,你的问题有些地方没有意义。希望这会有帮助。

 类似资料:
  • 本文向大家介绍使用Python Pandas进行数据分析,包括了使用Python Pandas进行数据分析的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将看到使用Python pandas库进行的数据分析。图书馆的熊猫都是用C语言编写的。因此,我们在速度上没有任何问题。它以数据分析而闻名。我们在熊猫中有两种类型的数据存储结构。它们是Series和DataFrame。让我们一一看。 1.

  • 问题内容: 我有一个像下面这样的熊猫数据框。 我根据基于UsrId的数据框进行分组。分组的数据框在概念上将如下所示。 现在,我正在寻找一个内置API,该API将为我提供具有最大作业数的UsrId。对于上面的示例,UsrId-2具有最大计数。 更新: 我想要最大作业数的’n’UserIds,而不是最大作业数的UsrID。对于上面的示例,如果n = 2,则输出为[2,1]。能做到吗? 问题答案: 喜欢

  • 我有一个pandas数据帧像: 我想按第一列进行分组,并将第二列作为行中的列表:

  • 我想按多个列对熊猫数据框进行分组。每个Row都有一个整数、一个Name和一个额外的数值。我希望最终的Dataframe包含Name具有最高整数的每一行。 通过分组数据帧,只有第0行应该消失。第3行和第4行仍应包括在数据框中。

  • 问题内容: 我有一个带有timeindex和3列的数据帧,其中包含3D矢量的坐标: 我想对也返回向量的每一行应用转换 但是如果我这样做: 我最后得到了一个以元组为元素的熊猫系列。这是因为apply将在不解压的情况下获取myfunc的结果。如何更改myfunc,以便获得具有3列的新df? 编辑: 以下所有解决方案均有效。Series解决方案确实允许使用列名,而List解决方案的执行速度似乎更快。 问

  • 我正在编写一个Python脚本来从我的数码相机导入图片,并且我正在使用Pandas来帮助记账传入的图像。我正在使用EXIF数据为单个图像标记信息,例如相机型号、图像模式、图像格式和相机获取图像的时间戳。这些数据用于将图像分离到目录结构中。我正在努力解决的是如何使用Pandas根据一组时间戳对图像进行分组,例如,这些时间戳都在彼此相隔半小时之内。举个例子,假设我有六张照片,其中三张是在相隔9分钟内拍