0

arulesこのパッケージを使用して、R とのマイニング アソシエーション ルールを練習したいと考えています。データは次のとおりです。

datt <- structure(list(Item1 = c(0L, 0L, 0L, 1L, 0L, 0L, 0L, 1L, 0L, 
0L), Item2 = c(0L, 0L, 0L, 1L, 0L, 1L, 1L, 0L, 0L, 0L), Item3 = c(0L, 
1L, 0L, 1L, 0L, 1L, 1L, 1L, 0L, 0L), Item4 = c(0L, 0L, 0L, 1L, 
0L, 0L, 0L, 0L, 0L, 0L), Item5 = c(1L, 0L, 0L, 1L, 0L, 0L, 0L, 
0L, 0L, 1L), Item6 = c(0L, 1L, 1L, 1L, 1L, 0L, 0L, 0L, 0L, 0L
), Item7 = c(0L, 1L, 0L, 1L, 0L, 1L, 0L, 0L, 0L, 0L), Item8 = c(0L, 
1L, 1L, 1L, 0L, 0L, 1L, 0L, 0L, 0L), Item9 = c(0L, 1L, 1L, 1L, 
0L, 0L, 0L, 0L, 1L, 0L), Item10 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 
0L, 0L, 0L)), .Names = c("Item1", "Item2", "Item3", "Item4", 
"Item5", "Item6", "Item7", "Item8", "Item9", "Item10"), row.names = c(2L, 
3L, 4L, 5L, 6L, 8L, 9L, 10L, 11L, 12L), class = c("cast_df", 
"data.frame"))

することで

table5 <- as(datt, "transactions")

このエラーが発生します:

Error in as(datt, "transactions") : 
  no method or default for coercing “cast_df” to “transactions”

オブジェクトを「トランザクション」オブジェクトに変換するにはどうすればよいですか?

4

5 に答える 5

1

これを試して :

as(as.matrix(datt), "transactions")
transactions in sparse format with
 10 transactions (rows) and
 10 items (columns)

エラーはここで明示的です:

no method or default for coercing “cast_df” to “transactions”

class(datt)このタイプcast_dfの強制メソッド ( )はありません。as

通常、パッケージを使用するときに強制を手動で行う必要はありませんarules。関数は内部で正しい強制を実行しようとします。例えば ​​:

dissimilarity(x=as.matrix(datt),method='cosine') ## works
dissimilarity(x=datt,method='cosine')            ## you get the same coercion error
于 2013-04-10T10:35:01.193 に答える
1

私にとってこれはうまくいきます

install.packages("arules")
于 2016-07-30T08:59:51.433 に答える
0

これらの問題は、マークダウンのコードのチャンクの前にライブラリをロードすることに関するものです。ライブラリが R 環境に読み込まれているので、コードは機能します。ただし、編み物の場合は、マークダウンでライブラリをロードする必要があります。

于 2021-05-30T20:56:55.263 に答える