如何将Transaction对象转换为R中的Dataframe
How to convert object of Transaction to Dataframe in R
如何将arules包中的Dataset(Groceries)转为dataframe
class(Groceries)
[1] "transactions"
attr(,"package")
[1] "arules"
您需要指定实际需要的内容。我在 arules
包的帮助页面中没有看到 as.data.frame.transactions
函数。 data-item Groceries
确实嵌入了一个数据框,但这是否是你想要的似乎不太可能:
str(Groceries)
Formal class 'transactions' [package "arules"] with 3 slots
..@ data :Formal class 'ngCMatrix' [package "Matrix"] with 5 slots
.. .. ..@ i : int [1:43367] 13 60 69 78 14 29 98 24 15 29 ...
.. .. ..@ p : int [1:9836] 0 4 7 8 12 16 21 22 27 28 ...
.. .. ..@ Dim : int [1:2] 169 9835
.. .. ..@ Dimnames:List of 2
.. .. .. ..$ : NULL
.. .. .. ..$ : NULL
.. .. ..@ factors : list()
..@ itemInfo :'data.frame': 169 obs. of 3 variables:
.. ..$ labels: chr [1:169] "frankfurter" "sausage" "liver loaf" "ham" ...
.. ..$ level2: Factor w/ 55 levels "baby food","bags",..: 44 44 44 44 44 44 44 42 42 41 ...
.. ..$ level1: Factor w/ 10 levels "canned food",..: 6 6 6 6 6 6 6 6 6 6 ...
..@ itemsetInfo:'data.frame': 0 obs. of 0 variables
我猜你真的想要:
as.matrix( Groceries@data )
可能添加 Groceries@ itemInfo$ labels
作为行名
arules
使用S4类型对象,但交易数据存储在转置稀疏矩阵中。您不应使用 @
直接访问数据。使用强制访问交易数据。这将确保数据具有正确的格式和正确的项目标签。
示例:
as(Groceries, "matrix")
as(Groceries, "list")
matrix 是一个逻辑 transaction-by-items 矩阵,list 生成交易集列表。有关详细信息,请查看 ?transactions
中的 coercion
方法。
如何将arules包中的Dataset(Groceries)转为dataframe
class(Groceries)
[1] "transactions"
attr(,"package")
[1] "arules"
您需要指定实际需要的内容。我在 arules
包的帮助页面中没有看到 as.data.frame.transactions
函数。 data-item Groceries
确实嵌入了一个数据框,但这是否是你想要的似乎不太可能:
str(Groceries)
Formal class 'transactions' [package "arules"] with 3 slots
..@ data :Formal class 'ngCMatrix' [package "Matrix"] with 5 slots
.. .. ..@ i : int [1:43367] 13 60 69 78 14 29 98 24 15 29 ...
.. .. ..@ p : int [1:9836] 0 4 7 8 12 16 21 22 27 28 ...
.. .. ..@ Dim : int [1:2] 169 9835
.. .. ..@ Dimnames:List of 2
.. .. .. ..$ : NULL
.. .. .. ..$ : NULL
.. .. ..@ factors : list()
..@ itemInfo :'data.frame': 169 obs. of 3 variables:
.. ..$ labels: chr [1:169] "frankfurter" "sausage" "liver loaf" "ham" ...
.. ..$ level2: Factor w/ 55 levels "baby food","bags",..: 44 44 44 44 44 44 44 42 42 41 ...
.. ..$ level1: Factor w/ 10 levels "canned food",..: 6 6 6 6 6 6 6 6 6 6 ...
..@ itemsetInfo:'data.frame': 0 obs. of 0 variables
我猜你真的想要:
as.matrix( Groceries@data )
可能添加 Groceries@ itemInfo$ labels
作为行名
arules
使用S4类型对象,但交易数据存储在转置稀疏矩阵中。您不应使用 @
直接访问数据。使用强制访问交易数据。这将确保数据具有正确的格式和正确的项目标签。
示例:
as(Groceries, "matrix")
as(Groceries, "list")
matrix 是一个逻辑 transaction-by-items 矩阵,list 生成交易集列表。有关详细信息,请查看 ?transactions
中的 coercion
方法。