2015-09-14 32 views
0

如何获得下面示例中min的列,而不是实际的数字?熊猫中的Rs的等效物

在R I会做:

which(min(abs(_quantiles - mean(_quantiles)))) 

在熊猫我试过(没有工作):

_quantiles.which(min(abs(_quantiles - mean(_quantiles)))) 

回答

0

idxminidxmax存在,但没有一般which据我可以看到。

_quantiles.idxmin(abs(_quantiles - mean(_quantiles))) 
+0

我不认为这就是我想的那样...任何人都确认? –

1

你可以做这种方式,在DF为NP阵列叫np.min,用它来创建一个布尔面具,放下不具有至少一个非NaN值的列:

In [2]: 
df = pd.DataFrame({'a':np.random.randn(5), 'b':np.random.randn(5)}) 
df 

Out[2]: 
      a   b 
0 -0.860548 -2.427571 
1 0.136942 1.020901 
2 -1.262078 -1.122940 
3 -1.290127 -1.031050 
4 1.227465 1.027870 

In [15]: 
df[df==np.min(df.values)].dropna(axis=1, thresh=1).columns 

Out[15]: 
Index(['b'], dtype='object')