在双索引Groupby数据框中找到最小值的内部索引

阿尔贝托·卡斯塔诺(Alberto Castano)

经过一些分组操作后,我有一个Pandas DataFrame:

df.groupby(["dataset", "method"])["mae"].mean()

看起来像:

dataset             method
acute.a             AC        0.003516
                    EDX       0.028901
                    EDy       0.029160
                    HDX       0.040332
                    HDy       0.027015
acute.b             AC        0.003575
                    EDX       0.043130
                    EDy       0.029151
                    HDX       0.016335
                    HDy       0.003692
balance.1           AC        0.012195
                    EDX       0.019322
                    EDy       0.010015
                    HDX       0.018285
                    HDy       0.009011
balance.2           AC        0.179619
                    EDX       0.259377
                    EDy       0.497555
                    HDX       0.444765
                    HDy       0.435202
balance.3           AC        0.028937
                    EDX       0.034840
                    EDy       0.014509
                    HDX       0.037650
                    HDy       0.014660
breast-cancer       AC        0.005540
                    EDX       0.007067
                    EDy       0.006252
                    HDX       0.012012
                    HDy       0.005629
                                ...  

因此,现在我想捕获,method该给出每个的最小值(第三列)dataset

我怎样才能做到这一点?

耶斯列尔

您可以将groupbywithidxmin用于每组MultiIndexminimal值的值,并选择元组的第二个值add str[1]

s = df.groupby(["dataset", "method"])["mae"].mean()

s1 = s.groupby(level=0).idxmin().str[1]
print (s1)
dataset
acute.a           AC
acute.b           AC
balance.1        HDy
balance.2         AC
balance.3        EDy
breast-cancer     AC
Name: mae, dtype: object

如果需要,还可以选择以下值loc

s2 = s.loc[s.groupby(level=0).idxmin()]
print (s2)
dataset        method
acute.a        AC        0.003516
acute.b        AC        0.003575
balance.1      HDy       0.009011
balance.2      AC        0.179619
balance.3      EDy       0.014509
breast-cancer  AC        0.005540
Name: mae, dtype: float64

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在数据框中找到第二个最小值的索引

如何在R数据框中找到最小值和索引并将其重组为Tidy数据框

在VBA中的多维数组中找到最小值的索引

Matlab在列中找到x个最小值的索引

如何在行索引不等于列索引的矩阵中找到最小值的索引?

从数据框中的索引获取最小值

从数据框列中找到索引或唯一值

在数据框列中找到重复值的索引

在多索引数据框中找到单个非南值

如何在ArrayList中找到最小值以及索引号?(Java)

在Rcpp中找到向量中所有最大/最小值的索引

如何在一维数组中找到多个最小值的索引?

如何在r的数据框中找到数字wrt的最大值和最小值?

如何在符合特定条件的数据框中找到最小值并返回特定列

如何从数据框的两列除中找到最小值

如何在给定的熊猫数据框中找到具有最小值的行?

有没有办法在多个数据框中找到最小值?

如何找到数据帧每一行的最小值索引?

如何找到向量中n个最小值的索引?

熊猫找到DataFrame矩阵的最小值:索引,列

如何找到一行中最小值的索引?

找到每列中的最小值及其索引

如何使用postgres在jsonb数据中找到最小值?

为多索引数据框的每个级别查找最小值

熊猫数据框-获取列索引以获取一行中的最小值

R:如何识别数据框中所有组的最小值的索引

如何在R中的数据框中返回包含最小值的列的索引

如何在数据框中找到具有列的最小值的第一行

在数据框中找到某些值的索引,并将其放在单独的列中