問題タブ [arules]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - Apriori, arulesSequences, in R : 「バスケット」のシーケンスをサポートしていますか (1 回の買い物での順序は関係ありません)。
私が持っているいくつかのデータに対して頻繁なシーケンスマイニングを実行することを目的として、 arulesSequences を使い始めています。店舗 A のデータは次のようになります。
CUSTOMER_ID seq_num サイズ buy_items
1 17399 1 2 {100,100}
2 17399 2 1 {800}
3 17399 3 2 {900,900}
4 17399 4 1 {405}
5 17399 5 4 {200,505,200,505}
これは、この顧客 #17399 がこのストア A で複数回買い物をしたことを意味します。この人は初めての買い物で、商品コード 100 と 100 の商品を 2 つ購入しました。この顧客は 2 回目の買い物旅行で、アイテム 800 だけを購入しました。
今、私はこの顧客に cSPADE を使用したいと考えています。注文は「バスケット」内では重要ではありませんが、買い物旅行全体では重要です。したがって、最終的に顧客 17399 の記録は次のようになります。
CUSTOMER_ID 購入したアイテム
17399 {(100,100),800,(900,900),405,(200,505,200,505)}
{} には完全なシーケンスが含まれ、() は各ショッピング旅行を表します。
一般的にはこれが可能性であることは理解していますが、これをサポートする arulesSequences について明示的に説明している例 (数時間の検索) やメモは見たことがありません。そこに何か考えはありますか?助けていただければ幸いです。
御時間ありがとうございます。
r - r パッケージのインストールの問題「arules」
Linux システムに r パッケージ「arules」をインストールしようとしています。R バージョン 3.2.2 (32 ビット) を使用しています。エラーメッセージは次のようになります。
このエラーを解決する方法を理解していませんか? このバージョンまたはそのパッケージはもう利用できませんか?
r - アソシエーション ルールを新しいデータセットに統合する方法
トランザクション データセットで R のルールを使用して、ルールのリストを生成しました。これで、顧客のリストと過去 2 か月間に購入した製品のリストを含む新しいデータセットができました。
私の目標は、トランザクション データから得たルールを使用して、それらの顧客に新しい関連製品を推奨することです。しかし、購入に基づいて顧客にレコメンデーション (ルール) を自動的に適用する方法が見つかりません。
どんなアドバイスでも大歓迎です。
ありがとう。
r - テーブル データを r のトランザクション データに変換する
現在のプロジェクトでは、大量のテーブル データ (19 変数の 300,000 以上の観測値) をルールのトランザクション データに変換する方法を見つけようとしています。多数の変数が論理的にフォーマットされています。
から次のことを試しましたlibrary(arules)
:newdata <- read.transactions("olddata.csv", format = "basket", rm.duplicates = FALSE, skip = 1)
ただし、次のエラーが表示されます。
Error in asMethod(object) :
can not coerce list with transactions with duplicated items
最初に発生した後に重複するすべての論理 T/F が削除されるため、多くのデータが失われるため、重複を削除したくありません。
for ループを使用して自分のタスクを達成できると考えました。
私の目標は、各観測値の各変数の値をcolumnnameA=TRUE
、columnnameB=FALSE
などのようにすることでした。これにより、関数の「重複」が排除され、read.transactions
すべてのデータが保持されます。
ただし、私の出力は次のようになります。
Recipient はolddata
オブジェクトの最初の変数名であることに注意してください。Recipient=X
次の変数名に変更して繰り返すときに、すべての観測を行った後。500 万を超える観測値を含むファイルになってしまいます...おっと! これは、ネストされた for ループに対する私の最初の真の試みです。これが最善のアプローチなのか、それともより良いアプローチがあるのか はわかりません。
ご意見やご感想をお寄せいただきありがとうございます。
r - lhs と rhs を分離する arules
だからここに例があります:
2 つの列を持つ data.table を作成します。1 つは lhs と呼ばれ、もう 1 つは rhs で、ルールの lhs と rhs の値を次のように格納します。
私はWindowsで始めて一度それをやったと誓いa<-as.data.table(inspect(rules))
ますが、私のMacではうまくいきません...あなたは何を提案しますか?
r - ルールを使用する関数のパッケージングの問題
私は R を使用しており、一連の関数をパッケージにアセンブルしようとしています。関数の 1 つは、パッケージ ルールを使用して、データセットからルールをマイニングし、それらをサブセット化し、他の関心度を取得します。
それらをサブセット化する行に問題があります。
ルールをロードしている限り、関数はパッケージの外部で機能しますが、ルールを Depends、Imports として設定したか、関数にライブラリ (arules) で呼び出しさせたかに関係なく、パッケージ内では機能しません。表示されるエラーは、「一致」にはベクトル引数が必要です。Arules にはそれを回避するための独自のバージョンの match があると思いました。 arules::match(rhs,"event") を試しましたが、まだ同じ問題があります。
r - R トランザクション データからアイテムを削除する
Rパッケージルールを扱っています。item1、item2、item3、item4、item5、item6 という名前の 6 つの列を持つ csv ファイルがあります。各セルはバスケット内のアイテムを表し、各行はトランザクションのバスケット全体を表します。問題は、csvファイルを次のように読み取った後です。
そしてそれをトランザクションに変えた後:
空のセルは、「itme3 =」という名前のアイテムと見なされることがわかりました。空のセルを無視する必要があることを指定する方法はありますか、または R トランザクション データから特定の項目を削除することは可能ですか?