Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.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_Dataframe_Multi Index - Fatal编程技术网

Python 使用匹配的多索引值访问数据帧的行

Python 使用匹配的多索引值访问数据帧的行,python,pandas,dataframe,multi-index,Python,Pandas,Dataframe,Multi Index,我有一个带有多索引的pandasDataframe(它可以作为netcdf文件访问)。数据如下图所示-多索引(names=['rgi_id','time'])由冰川编号(RGI60-15.00001至RGI60-15.13000)和时间点(2020至2101)组成 我想提取属于每个冰川的所有行。我提取了多索引第一部分的唯一值,如下所示:uniques=np.unique(np.array(list(df.index.get_level_values(0))) 但当我想使用uniques隔离所有行

我有一个带有多索引的
pandas
Dataframe(它可以作为netcdf文件访问)。数据如下图所示-多索引(
names=['rgi_id','time']
)由冰川编号(RGI60-15.00001至RGI60-15.13000)和时间点(2020至2101)组成

我想提取属于每个冰川的所有行。我提取了多索引第一部分的唯一值,如下所示:
uniques=np.unique(np.array(list(df.index.get_level_values(0)))

但当我想使用
uniques
隔离所有行时,我会得到一个空数据帧:

>>> df.loc[df.index == uniques[0]

Empty DataFrame
Columns: [hydro_year, hydro_month, calendar_year, calendar_month, volume, area, length, terminus_thick_0, terminus_thick_1, terminus_thick_2, water_level, glen_a, fs]
Index: []
我理解这是因为
uniques
只包含多索引的前几个部分,因此不匹配。但现在我对如何合并多索引的第二部分没有任何想法

我如何迭代数据帧并提取属于每个冰川的所有行?我是走对了路还是有别的解决办法?我知道解决方案,但我无法正确应用它


使用
df.loc[uniques[0]]
在轴上索引,标签位于第一级。

我无法访问它;它的扩展名是
.nc
,不是文本文件是的,对不起。我忘了在问题中提到它-数据是一个netcdf文件,我将其转换为一个数据帧。