在R中导入多个文本文件并查找常用模式

数数

我正在尝试在R数据挖掘中使用Apriori查找频繁模式项目集。我有一组仅包含名称的文本文件。例如:

**name1.txt**
Bob
Alice

**name2.txt**
Alice
Don

**name3.txt**
Bob
Alice
Ben

如果min_sup为2,则使用频繁模式,结果将为{Bob,Alice}。我想从R中获得它。

我知道如何导入单个文本文件并使用eclat算法来查找单个文件的频繁项集。

fsets <- eclat(Adult, parameter = list(supp = 0.5))

我的问题是,如何导入一个文件夹中的多个文件并在eclat中使用它?

先感谢您!

罗伯特·克尔兹扎诺夫斯基(Robert Krzyzanowski)

将文件导入为列表。

files <- lapply(seq_len(3), function(x) readLines(paste0("name",x,".txt")))

计算交叉点计数

counts <- Reduce(function(cnts, lst) {
  for(i in names(tmp <- table(as.character(unlist(lst)))))
    cnts[[i]] <- if(i %in% names(cnts)) cnts[[i]] + tmp[[i]]
                 else tmp[[i]]
  cnts
}, files, list())

找到你想要的。

min_sup <- 2
most_frequent <- names(counts)[as.integer(unlist(counts)) >= min_sup]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章