Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 按组的索引检索组。熊猫是被分类的吗?_Python_Pandas - Fatal编程技术网

Python 按组的索引检索组。熊猫是被分类的吗?

Python 按组的索引检索组。熊猫是被分类的吗?,python,pandas,Python,Pandas,假设我在某个列周围分组一个数据框 df.groupby(cols) 是否根据任何标准对组进行排序 检索组的一种方法是: ix = 0 grouped.get_group(grouped.groups.keys()[ix]) 但是它有点冗长,而且不清楚上面的keys()是否会按顺序给出这些组 另一种方式: df = df.set_index(col) df.loc[idx[df.index.levels[0][0],:],:] 但同样,这是非常冗长的 还有其他方法可以通过整数索引获取组吗?如

假设我在某个列周围分组一个数据框

df.groupby(cols)
是否根据任何标准对组进行排序

检索组的一种方法是:

ix = 0
grouped.get_group(grouped.groups.keys()[ix])
但是它有点冗长,而且不清楚上面的
keys()
是否会按顺序给出这些组

另一种方式:

df = df.set_index(col)
df.loc[idx[df.index.levels[0][0],:],:]
但同样,这是非常冗长的

还有其他方法可以通过整数索引获取组吗?

如何:

key, df2 = iter(grouped).next()
那么:

key, df2 = iter(grouped).next()
那么:

key, df2 = iter(grouped).next()
那么:

key, df2 = iter(grouped).next()

groupby
有一个
sort
参数,默认情况下该参数为
True
,因此组被排序。至于获取
n
th组,看起来您必须定义一个函数,并使用一个内部API:

In [123]: df = DataFrame({'a': [1,1,1,1,2,2,3,3,3,3], 'b': randn(10)})

In [124]: df
Out[124]:
   a       b
0  1  1.5665
1  1 -0.2558
2  1  0.0756
3  1 -0.2821
4  2  0.8670
5  2 -2.0043
6  3 -1.3393
7  3  0.3898
8  3 -0.3392
9  3  1.2198

[10 rows x 2 columns]

In [125]: gb = df.groupby('a')

In [126]: def nth_group(gb, n):
   .....:     keys = gb.grouper._get_group_keys()
   .....:     return gb.get_group(keys[n])
   .....:

In [127]: nth_group(gb, 0)
Out[127]:
   a       b
0  1  1.5665
1  1 -0.2558
2  1  0.0756
3  1 -0.2821

[4 rows x 2 columns]

groupby
有一个
sort
参数,默认情况下该参数为
True
,因此组被排序。至于获取
n
th组,看起来您必须定义一个函数,并使用一个内部API:

In [123]: df = DataFrame({'a': [1,1,1,1,2,2,3,3,3,3], 'b': randn(10)})

In [124]: df
Out[124]:
   a       b
0  1  1.5665
1  1 -0.2558
2  1  0.0756
3  1 -0.2821
4  2  0.8670
5  2 -2.0043
6  3 -1.3393
7  3  0.3898
8  3 -0.3392
9  3  1.2198

[10 rows x 2 columns]

In [125]: gb = df.groupby('a')

In [126]: def nth_group(gb, n):
   .....:     keys = gb.grouper._get_group_keys()
   .....:     return gb.get_group(keys[n])
   .....:

In [127]: nth_group(gb, 0)
Out[127]:
   a       b
0  1  1.5665
1  1 -0.2558
2  1  0.0756
3  1 -0.2821

[4 rows x 2 columns]

groupby
有一个
sort
参数,默认情况下该参数为
True
,因此组被排序。至于获取
n
th组,看起来您必须定义一个函数,并使用一个内部API:

In [123]: df = DataFrame({'a': [1,1,1,1,2,2,3,3,3,3], 'b': randn(10)})

In [124]: df
Out[124]:
   a       b
0  1  1.5665
1  1 -0.2558
2  1  0.0756
3  1 -0.2821
4  2  0.8670
5  2 -2.0043
6  3 -1.3393
7  3  0.3898
8  3 -0.3392
9  3  1.2198

[10 rows x 2 columns]

In [125]: gb = df.groupby('a')

In [126]: def nth_group(gb, n):
   .....:     keys = gb.grouper._get_group_keys()
   .....:     return gb.get_group(keys[n])
   .....:

In [127]: nth_group(gb, 0)
Out[127]:
   a       b
0  1  1.5665
1  1 -0.2558
2  1  0.0756
3  1 -0.2821

[4 rows x 2 columns]

groupby
有一个
sort
参数,默认情况下该参数为
True
,因此组被排序。至于获取
n
th组,看起来您必须定义一个函数,并使用一个内部API:

In [123]: df = DataFrame({'a': [1,1,1,1,2,2,3,3,3,3], 'b': randn(10)})

In [124]: df
Out[124]:
   a       b
0  1  1.5665
1  1 -0.2558
2  1  0.0756
3  1 -0.2821
4  2  0.8670
5  2 -2.0043
6  3 -1.3393
7  3  0.3898
8  3 -0.3392
9  3  1.2198

[10 rows x 2 columns]

In [125]: gb = df.groupby('a')

In [126]: def nth_group(gb, n):
   .....:     keys = gb.grouper._get_group_keys()
   .....:     return gb.get_group(keys[n])
   .....:

In [127]: nth_group(gb, 0)
Out[127]:
   a       b
0  1  1.5665
1  1 -0.2558
2  1  0.0756
3  1 -0.2821

[4 rows x 2 columns]

谢谢@Philip。此接口仍受支持吗?方法
\u获取\u组\u密钥
似乎不再可用。谢谢@Philip。此接口仍受支持吗?方法
\u获取\u组\u密钥
似乎不再可用。谢谢@Philip。此接口仍受支持吗?方法
\u获取\u组\u密钥
似乎不再可用。谢谢@Philip。此接口仍受支持吗?方法
\u获取\u组\u密钥
似乎不再可用。