|
1
563
重要注意事项: 你必须 排序你的数据 第一。 我没有得到的部分是在示例构造中
下面是一个例子,使用更清晰的变量名:
这将为您提供输出:
在这个例子中,
这个
在这里,
在上面
下面是一个使用相同数据的稍微不同的示例,使用列表理解:
这将为您提供输出:
|
|
|
2
69
你能给我们看看你的密码吗? 关于python文档的示例非常简单:
因此,在您的例子中,数据是一个节点列表,keyfunc是标准函数的逻辑所在,然后
你必须小心
数据排序
按你打电话前的标准
|
|
|
3
35
Neato与Groupby的一个诀窍是在一行中运行长度编码:
将为您提供两个元组的列表,其中第一个元素是char,第二个元素是重复次数。
编辑:请注意,这是分隔
|
|
4
28
从 the docs ,我们进一步了解它可能会做什么:
特征
比较
使用
注:后面的几个例子来源于Vctor Terrn的Pycon
(talk)
(Spanish)
《黎明功夫与伊特陶尔》。也见
响应
|
|
|
5
24
另一个例子:
结果在
注意,igroup是一个迭代器(文档称之为子迭代器)。 这有助于对发电机进行分块:
GroupBy的另一个示例-不排序键时。在下面的示例中,XX中的项按YY中的值分组。在这种情况下,首先输出一组零,然后输出一组一,再输出一组零。
生产:
|
|
|
6
19
警告: 语法列表(groupby(…)将无法按预期方式工作。它似乎会破坏内部迭代器对象,因此使用
将产生:
而不是list(groupby(…)),在groupby(…)]中尝试[(k,list(g))for k,g,或者如果经常使用该语法,
并且可以访问groupby功能,同时避免这些麻烦的(对于小数据)迭代器。 |
|
|
7
9
我想再举一个没有排序的GroupBy不起作用的例子。改编自詹姆斯·苏拉克的例子
输出是
有两组有车辆,而一组只有一组 |
|
|
8
7
@我试过你的例子,但没用。
输出:
如你所见,有两个O和两个E,但它们是分开的。这时我意识到您需要对传递给groupby函数的列表进行排序。因此,正确的用法是:
输出:
只需记住,如果列表未排序,则GroupBy函数 不会工作 ! |
|
9
5
您可以使用groupby对要迭代的内容进行分组。你给groupby一个iterable和一个可选的 钥匙 函数/可调用项,用于在项从iterable出来时检查它们,它返回一个迭代器,该迭代器给出键可调用结果的两个元组和另一个iterable中的实际项。从帮助:
下面是一个使用协程按计数分组的GroupBy示例,它使用一个键可调用(在本例中,
印刷品
|
|
|
10
5
|
|
|
11
1
我遇到的一个有用的例子可能会有所帮助:
样本输入:14445221 样品输出:(1,1)(3,4)(1,5)(2,2)(1,1) |
|
|
12
1
您可以编写自己的groupby函数:
|