トランザクション履歴を使用したカテゴリ間の売り上げの発見(クラスタリング?)

私は1つ以上の商品を購入した一連の販売取引データを持っています。販売されるすべての商品にカテゴリがあります。最も一般的に一緒に注文されているカテゴリを把握したいと思います。

データは多かれ少なかれ次のようなものです:

Transaction ID|Item ID | Sales Quantity|Item Category
1              Apple     1              Fruit
1              Banana    1              Fruit
1              Carrot    2              Vegetable
2              Carrot    1              Vegetable
2              Ice Cream 2              Dessert
3              Squash    2              Vegetable
3              Chocolate 2              Dessert
4              Apple     1              Fruit
4              Carrot    1              Vegetable
4              Doughnut  1              Dessert

あなたの目の前では、同じトランザクションで大量の野菜とデザートの組み合わせがあることがわかります。しかし今、データセットに25万以上のトランザクションがあり、数十ものカテゴリがあると想像してください。私は、クロス・カテゴリー・セールだけを発見しようとしています。リンゴとバナナ(果物 - 果物)のペアには興味がありません。

私は解析のコード作成方法を自分で教えることができると思うが、これが何であるか、Googleに何が呼び出されているのか分からない。何かご意見は?

1

2 答え

データは次のように並べ替えられます。

Transaction ID | Items
1                {Apple, Banana, Carrot}
2                {Carrot, Ice Cream}

このような種類のデータセットは、関連ルールマイニングにとっては些細なものです。この種の非常に簡単でよく知られているアルゴリズムは、 Apriori です。私はRにこのアルゴリズムを実行するためのパッケージがあると確信しています。

「カテゴリ間の販売のみを検出する」という制約のために、生成されたルール、すなわち、ポストプルーニングすることができます。アルゴリズムがカテゴリ間の売上を生成してから後でそれらを削除するようにしてください。これは簡単なはずです。

1
追加された

@ Mephyの答えに基づいて、私は少し詳しく説明したかった。アソシエーションルールマイニング。これは「マーケットバスケット分析」とも呼ばれます。

あなたの質問に基づいて、マーケット・バスケット分析をグーグル・サーチすると、より多くの結果が得られ、