2016-04-13 9 views
2

私のデータフレームからのデータの抽出とカウントに成功しましたが、結果のカウント値をソートしたいと思います。Python pandas sortbyの結果

GROUPBYスニペット:

my_df.groupby('name').Id.nunique().head(5) 

結果:

Name 
nameA  4 
nameB  1 
nameC  1 
nameD  6 
nameE  2 

しかし、私は次のような結果を注文したいと思います。

Name 
nameD  6 
nameA  4 
nameE  2 
nameB  1 
nameC  1 

私はまっすぐである必要があり、これを想定していると私は、誰かが正しい方向に私を指すことができます願っています。

+1

おそらくだけ([ 'DataFrame.sort_values']使用http://pandas.pydata.org/pandas-docs/version/0.17.1/generated/pandas.DataFrame.sort_values.html#pandas.DataFrame .sort_values) –

+0

正直なところ、[google](https://www.google.ca/webhp?hl=en#hl=en&q=Python+pandas+sort+groupby+results)だけで、あなたの答えを見つけることができます。 –

答えて

2

あなたはグループバイも必要ありません。単にvalue_counts()を使用してください。

>>> df.Name.value_counts() 
nameD 6 
nameA 4 
nameE 2 
nameC 1 
nameB 1 
Name: Name, dtype: int64 
+0

名前ごとに一意のIDが1つあることが保証されている場合は、これを答えとしてマークする必要があります。 – SpeedCoder5

+0

それは素晴らしいです!ありがとうございました! – FunnyChef

1

で試してみてください:

my_df.groupby('name').Id.nunique().sort_values(ascending=False) 
0

@ej_fを - 右に。私の結果はヌニークで面白かったので、代わりにカウントを使用しました。

my_df.groupby('name').Id.count().sort_values(ascending=False)