【问题标题】:R How to load Sparse data for arules packageR如何为arules包加载稀疏数据
【发布时间】:2015-01-15 01:58:45
【问题描述】:

我有 CSV,其中的文本数据类似于:

citrus fruit,semi-finished bread,margarine,ready soups
tropical fruit,yogurt,coffee
whole milk
pip fruit,yogurt,cream cheese ,meat spreads
other vegetables,whole milk,condensed milk,long life bakery product
whole milk,butter,yogurt,rice,abrasive cleaner

我想将其加载到稀疏交易表单中,最好的方法是什么? 我希望能够在其上使用 arules 包

【问题讨论】:

    标签: r sparse-matrix arules


    【解决方案1】:

    您可以使用readLines,然后使用strsplit,然后强制转换为arules 的transactions 对象

    tran <- readLines("transactions.csv")      # read all lines
    tran <- strsplit(tran, ",", fixed=TRUE)    # split each line by commas, returns a list
    
    library(arules)
    tran <- as(tran, Class =  "transactions")            # coerce to transaction object
    rules <- apriori(tran, parameter=list(support=0.1))   # etc
    inspect(rules[1])
    

    【讨论】:

    • 当我已经将数据作为数据框获取时是否可以这样做? IE。我已经对数据进行了一些预处理,现在想强制转换为事务对象
    • 好像拆分成一个列表,我要每行一个列表
    • 您是否以 长格式 存储它?喜欢data.frame(tran.id=c(1,1,2,2,2), item=c("citrus","fruit","yogurt","coffee","milk")) 吗?如果是,请参阅 ?read.transactions 中的示例以获取 format="single"
    • 你好。不,它不是长格式,它看起来和上面的完全一样,每一行都是一个新行
    • 如果您能提供用于处理文件的代码,那么我们可以看看如何将其转换为 arules 期望的格式。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-27
    • 1970-01-01
    • 2015-01-16
    • 2021-03-17
    • 1970-01-01
    相关资源
    最近更新 更多