r - 如何删除使用 arules 包读取的事务数据中的空列?

标签 r transactions arules

我有一个以篮子数据格式制作的数据集。我已经使用包调用 arules 在 R 中读取了该数据集它有一个用于读取交易的内置函数,所以我使用了它并读取了我的数据集。以下是我使用的代码:

trans = read.transactions("C:/Users/HARI/Desktop/Graph_mining/transactional_data_v3.csv", format = "basket", sep=",",rm.duplicates=TRUE)
inspect(trans[1:5])
  items                  
1 {,                     
   ANTIVERT,             
   SOFTCLIX}             
2 {,                     
   CEFADROXIL,           
   ESTROGEN}             
3 {,                     
   BENZAMYCIN,           
   BETAMETH,             
   KEFLEX,               
   PERCOCET}             
4 {,                     
   ACCUTANE(RXPAK;10X10),
   BENZAMYCIN}           
5 {,                     
   ALBUTEROL,            
   BUTISOLSODIUM,        
   CLARITIN,             
   NASACORTAQ}

如您所见,当我使用 inspect(trans) 时,它会显示每个交易中都有一个空列。我的问题是如何删除那些空列?

有关 trans 对象的完整 dput,请参阅 this link .

最佳答案

我想我已经找到了解决您问题的方法。我获取了您的 csv 文件,在 Excel 中打开它,并将所有空单元格替换为 NA。然后我将整个内容粘贴到 LibreOffice Calc 中,并将其保存回 csv,指定所有单元格都应使用双引号(奇怪的是,Excel 不会这样做,除非使用 vba 宏。您可以直接在 LibreOffice 中读取该文件然而,在 Excel 中,用 NA 替换空单元格将花费很长时间)。然后:

trans <- read.table("d:/downloads/transactional_data_2.csv", sep=",", stringsAsFactors = TRUE, na.strings="NA", header=TRUE)
trans2 <- as(trans, "transactions")
inspect(trans2[1:5])

结果

inspect(trans[1:5])

  items                      transactionID
1 {X1=SOFTCLIX,                           
   X2=ANTIVERT}                          1
2 {X1=ESTROGEN,                           
   X2=CEFADROXIL}                        2
3 {X1=KEFLEX,                             
   X2=BETAMETH,                           
   X3=PERCOCET,                           
   X4=BENZAMYCIN}                        3
4 {X1=BENZAMYCIN,                         
   X2=ACCUTANE(RXPAK;10X10)}             4
5 {X1=CLARITIN,                           
   X2=ALBUTEROL,                          
   X3=NASACORTAQ,                         
   X4=BUTISOLSODIUM}                     5

我认为这就是您正在寻找的结果......?

关于r - 如何删除使用 arules 包读取的事务数据中的空列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29221378/

相关文章:

r - 在 R 中,如何在点 sf 对象上运行 st_convex_hull 函数?

r - 如何在 shiny 中使用带有 reactiveValues 的 debounce

php - 事务在 laravel 中不起作用

hibernate - hibernate :事务未成功启动(线程化webapp)问题!

R Arules 项目频率图旋转轴标签

r - 如何从两个数据框中按最近的日期进行匹配?

r - 针织/Rmd : page break after n lines/n distance

sql-server - COMMIT TRANSACTION请求没有对应的BEGIN TRANSACTION

r - 多个连续变量之间的关联规则

r - R和MapReduce查找关联规则