【Python】 DataFrame の特定の列で出現回数をカウントして降順でソートする方法。
Python で DataFrame 型の特定の列を指定して、対象列の文字列の出現回数をカウントして出現回数の降順(多い順)に並べる方法を紹介します。
DataFrame の「value_counts()」関数を使うと簡単に実現できました。
以下のような df という名前の DataFrame 型のデータがあるとします。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
q_user_id r_user_id 0 akikirara1122 akikirara1122 1 akikirara1122 akikirara1122 2 asakaakie_blog2 asakaakie_blog2 3 a6789012002 casablanca117531 4 akikirara1122 amanjuli03 5 akikirara1122 asakaakie_blog2 6 akikirara1122 chanchankoiro 7 amanjuli03 ashino817 8 amanjuli03 casablanca117531 9 amanjuli03 chanchankoiro 10 asakaakie_blog2 ashino817 11 cotsplace cotsplace 12 ddogs38 ddogs38 13 fpdxw092 fpdxw092 14 fpdxw092 fpdxw092 15 ddogs38 fpdxw092 : |
「q_user_id」列の重複している各ユーザIDの出現回数をカウントします。
|
1 2 |
count = df['q_user_id'].value_counts() print(count) |
結果は、以下のようになります。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
tottokosa 6 akikirara1122 5 houzankai2006 3 amanjuli03 3 nama_k1 3 maruru39 2 ddogs38 2 sasaootako 2 nipponko2007 2 asakaakie_blog2 2 papakoa 2 umayado17 2 fpdxw092 2 cotsplace 1 juveneko 1 macyaken 1 a6789012002 1 saba2006201 1 tposato1 1 sanmamini91 1 wwide1225 1 Name: q_user_id, dtype: int64 |
結果は、Series 型で返り、index が 重複をカウントしたい要素(今回の場合は q_user_id 列)、data が 出現回数 となります。また、dtype は int64 となります。
Series 型は、インデックスとデータを持ちます。
なお、value_counts() はデフォルトで出現回数の降順(多い順)でソートしてくれます。
関連記事
-
-
【Atom エディタ】Python で Matplotlib のグラフを Atom 上に表示させる方法。
Atom エディタで Python の Matplotlib ライブラリを使って、Atom 上にグラ
-
-
【Python】プログレスバーを表示させる【tqdm】
Python でスクリプトの実行時間が長くなると、進捗状況が知りたくなったので、標準出力にどのくらい
-
-
【OpenCV】画像の顔部分を検出する方法【Python】
OpenCV を使って、Python で画像から顔部分の検出を行ったときのメモです。 Anac
-
-
【Pandas】 loc・ilocで1行のみ Series ではなく DataFrame で抽出する方法。
Python の Pandas で DataFrame から loc や iloc を使って行を抽出
-
-
【Pandas】 DataFrame のある列の最大値を含む行のインデックス値を取得する方法。
今回は、Pandas の DataFrame において、ある列で最大値を求めて、その最大値をもつ行に
-
-
【Pandas】 DataFrame のインデックスを置き換える方法【Python】
今回は、Pandas の DataFrame型で、インデックス(index)を分かりやすいものに置き
-
-
【Pandas】 DetaFrame の列ごとに演算する方法【Python】
今回は、DetaFrame の列ごとに平均や加算・減算なのど演算をし、結果を DetaFrame 型
-
-
【OpenCV】検出した顔画像部分を切り出す方法【Python】
OpenCV を使って、Python で画像の中から顔部分を切り出したときのメモです。 顔部分
-
-
【Pandas】 DataFrame と Series のデータ構造について【Python】
今回は、Python でデータ分析を行っていると必ず使う Pandas の DataFrame と
-
-
【Python】pip3 で「cannot import name ‘main’」エラーが出たときの対処法。
Python でライブラリをインストールする際に、pipを使います。 Python2 と Py



















