Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

base package used when arules is required. Specifying package doesn't work

Tags:

r

arules

I'm trying to write a single format file within the arules package, to load it in as a transaction afterwards for association rule mining. I can't use this function, since R keeps using the base::write function instead of the arules::write function.

arules::write(x = dfSingle,
              file = "dfSingleFile",
              format = "single",
              quote = TRUE,
              sep = ",")

Gives the following error message:

Error in base::write(x, file, ...) : 
unused arguments (format = "single", quote = TRUE)

When I loaded the arules package at the beginning of the session, it did say it masked the write function from base:

library(arules)
Loading required package: Matrix

Attaching package: ‘arules’
The following objects are masked from ‘package:base’: abbreviate, write

I've already tried installing the arules package again. I'm using R 3.5.1 within Rstudio Server (1.1.414).

Any help on this?

like image 562
Cnidders Avatar asked Oct 29 '22 01:10

Cnidders


1 Answers

Check the class of dfSingle, if it is not "transactions" then it is passed to base::write, see example:

library(arules)
data(Epub)

class(Epub)
# [1] "transactions"
# attr(,"package")
# [1] "arules"
arules::write(x = head(Epub),
              file = "test",
              format = "single",
              quote = TRUE,
              sep = ",")
# no errors!

class(mtcars)
#[1] "data.frame"
arules::write(x = mtcars,
              file = "test",
              format = "single",
              quote = TRUE,
              sep = ",")
# Error in base::write(x, file, ...) : 
#   unused arguments (format = "single", quote = TRUE)
like image 172
zx8754 Avatar answered Nov 15 '22 05:11

zx8754