2017-05-02 8 views
0
hh<-read.csv("MT_MBR_CTGR_BUY_PTTRN_DAY.csv") 

library(arules) 

aa<-subset(hh, select=c(mbr_no,ctgr_flag_nm)) 

'data.frame': 643241 obs. of 2 variables: 
$ mbr_no  : num 2.01e+14 2.01e+14 2.01e+14 2.01e+14 2.01e+14 ... 
$ ctgr_flag_nm: Factor w/ 7 levels "그린핑거","기저귀",..: 1 4 4 4 4 4 4 4 7 7 ... 

aa$mbr_no<-as.factor(aa$mbr_no) 

rioter.transaction<-as(aa, "transactions") 

rioter.transaction 

transactions in sparse format with 
643241 transactions (rows) and 
178834 items (columns) 

rules = apriori(rioter.transaction) 

summary(rules) 
set of 0 rules 

なぜルールは0になりますか?r関連ルールapriori

私は他の方法でread.transactionsに

またはmbr_no型変換を行うためにトリングましたが、それはまだ私はそれを修正することができますどのように

動作しませんか?

+0

「apriori」のデフォルトのサポートは(0.1)10%です。データに10%のサポートを持つアイテムがない場合、ルールはゼロになります。これを変更するには、 'support = 'を指定します。 '?apriori'を試し、異なるパラメータのデフォルトと非デフォルトの指定に関するガイドラインについては、ドキュメントに従ってください。 – Gopala

答えて

0

変数mbr_noは、データに178834-7の異なる値が連続しているようです。連続変数を離散化する必要があります。 as.factorはこれを行いませんが、変数のそれぞれの異なる値にレベルを割り当てます。

aa$mbr_no <- discretize(aa$mbr_no) 

discretizearulesパッケージ(? discretizeを参照)の一部です。だから、代わりにこのような何かを行う必要があります。

関連する問題