为什么R中arules的as(…,“交易”)似乎丢失了交易?

为什么R中arules的as(…,“交易”)似乎丢失了交易?,r,arules,R,Arules,我有一个CSV格式的大型数据集: 有50000行,每行是一个事务 每笔交易最多5项,最少1项 有5000个不同的可能项目值 交易中没有重复的项目 将CSV加载到RStudio并应用unclass()后,我将应用为(…,“事务”) 结果是这样的: # transactions in sparse format with # 5 transactions (rows) and # 1455 items (columns) 现在只有5笔交易,而不是50000笔 所有的交易都到哪里去了?矩阵

我有一个CSV格式的大型数据集:

  • 有50000行,每行是一个事务
  • 每笔交易最多5项,最少1项
  • 有5000个不同的可能项目值
  • 交易中没有重复的项目
将CSV加载到RStudio并应用
unclass()
后,我将
应用为(…,“事务”)

结果是这样的:

# transactions in sparse format with
#  5 transactions (rows) and
#  1455 items (columns)
现在只有5笔交易,而不是50000笔

所有的交易都到哪里去了?矩阵是否以某种方式进行了转换(因为结果中的行数等于我的CSV的列数)

这可能是一个数据预处理问题,但根据post,我输入的数据应该具有正确的格式


[我是第一次在这里发帖,对R/RStudio来说是相当陌生的。]

看看手册页中的
强制方法
?事务处理
。您将看到,您需要一个二进制关联矩阵、一个事务列表或一个仅包含分类变量的data.frame。由于(…,“事务”)
将失败,因此您的数据不是这些数据之一

我认为
read.transactions
可以读取您的数据

library(arules)

# create and write some data
data <- paste(
   "item1,item2,,,", 
   "item1,,,,", 
   "item2,item3,,,", 
   sep="\n")
write(data, file = "demo_basket")

# read the data
tr <- read.transactions("demo_basket", format = "basket", sep=",")
inspect(tr)

    items        
[1] {item1,item2}
[2] {item1}      
[3] {item2,item3}
库(阿鲁莱斯)
#创建并写入一些数据

数据查看手册页
中的
强制
方法?事务处理
。您将看到,您需要一个二进制关联矩阵、一个事务列表或一个仅包含分类变量的data.frame。由于(…,“事务”)
将失败,因此您的数据不是这些数据之一

我认为
read.transactions
可以读取您的数据

library(arules)

# create and write some data
data <- paste(
   "item1,item2,,,", 
   "item1,,,,", 
   "item2,item3,,,", 
   sep="\n")
write(data, file = "demo_basket")

# read the data
tr <- read.transactions("demo_basket", format = "basket", sep=",")
inspect(tr)

    items        
[1] {item1,item2}
[2] {item1}      
[3] {item2,item3}
库(阿鲁莱斯)
#创建并写入一些数据
数据