2

我已经成功地将我的数据作为交易导入到 R 中,但是当我尝试定位特定网站时,我收到了这个错误:

asMethod(object) 中的错误:FACEBOOK.COM 是未知项目标签

有什么理由会发生这种情况吗?这是一段代码:

target.conf80 = apriori(trans,
parameter = list(supp=.002,conf=.8),
appearance = list(default="lhs",rhs = "FACEBOOK.COM"),
control = list(verbose = F))
target.conf80 = sort(target.conf80,decreasing=TRUE,by="confidence")
inspect(target.conf80[1:10])

谢谢!

以下是交易的样子:

1 {V1=Google,                                  
   V2=Google Web Search,                       
   V3=FACEBOOK.COM}                           1
2 {V1=FACEBOOK.COM,                            
   V2=MCAFEE.COM,                              
   V3=7EER.NET,                                
   V4=Google}                                 2
3 {V1=MCAFEE.COM,                              
4

2 回答 2

0

as(data, 'transactions')来自数据框的错误

我假设数据集被转换如下data <- as(data, 'transactions')...... 如果您运行该代码而不对您的数据执行一些操作,您将获得那些V1, V2, ....

交易前清理数据

我想包括如何操作数据以准备好read.transctions()。将数据导入 R 后,您希望将数据框转换为像这样的矩阵... d.matrix <- as.matrix(df),如果您确实有标题,您希望消除任何标题;colnames(d.matrix) <- NULL. 现在你没有标题。之后你想......

write.table(x = d.matrix, 
      file = 'clean_data.csv',
      sep = ',',
      col.names = FALSE, 
      row.names = FALSE)

最后,您想像这样将数据作为事务导入......

data <- read.transactions('clean_data.csv',
                           format = 'basket',
                           sep = ',',
                           rm.duplicates = TRUE)

现在你有一个V1, V2, V3, ...没有行 ID 的数据集

于 2016-11-04T19:35:40.757 回答
0

问题在于您读取/将数据转换为事务的方式。交易应如下所示:

1 {Google,                                  
   Google Web Search,                       
   FACEBOOK.COM}                           1
2 {FACEBOOK.COM,                            
   MCAFEE.COM,                              
   7EER.NET,                                
   Google}                                 2
 3 {MCAFEE.COM,
    ...

如果没有 V1、V2 等。在您的交易中V1=GoogleV4=Google是不同的项目。

于 2015-08-21T18:17:53.017 回答