1
私はパンダのデータフレームdf
を持ち、列はuser
とproduct
です。どの製品をどのユーザーが購入したかを記述し、同じ製品を繰り返し購入することを説明します。例えば。ユーザー1が製品23を3回購入した場合、df
には、ユーザー1に対して3回のエントリ23が含まれます。 すべてのユーザーについて、そのユーザーが3回以上購入した製品のみに興味があります。したがって、私はs = df.groupby('user').product.value_counts()
を実行し、その後、私は十分に頻繁に買わない製品を廃棄するためにs = s[s>2]
をフィルタリングします。パンダ:groupby.value_counts()からDict
user product
3 39190 9
47766 8
21903 8
6 21903 5
38293 5
11 8309 7
27959 7
14947 5
35948 4
8670 4
データをフィルタ処理したので、私はこれ以上の周波数では興味がない(右列):次に、s
は次のようになります。
s
に基づいてuser:product
という形式の辞書を作成するにはどうすればよいですか?シリーズの個々の列/インデックスにアクセスするのに問題があります。それを解決
おかげで、!オプション0では、reset_index()に新しい列名を指定しなければなりませんでした。そうでなければ、命名エラーが発生しました([here](https://stackoverflow.com/questions/39778686/pandas-reset-index-after- groupby-value-counts))。 – DominikS