Using tidyverse and matconv to convert Matlab code to R code

Viewed 419

The Matlab code can be converted to R code using the following command

library(matconv)

mat2r(
   inMat           = "A.m"
  , pathOutR       = "A.R"
  , funcConverters = NULL
  , dataConverters = NULL
  , verbose        = 1
)

mat2r(
   inMat           = "B.m"
  , pathOutR       = "B.R"
  , funcConverters = NULL
  , dataConverters = NULL
  , verbose        = 1
)

However, I'm looking some more efficient code something like below:

library(purrr)
dir(path = ".", pattern = "*.m", full.names = FALSE) %>%
map(
  .x = .
, .f = mat2r(
           inMat           = .
          , pathOutR       = paste0(., ".R")
          , funcConverters = NULL
          , dataConverters = NULL
          , verbose        = 1
        )
    )

Which is not working for me. Any hint please.

1 Answers

Try the following :

dir(path = ".", pattern = "*.m") %>%
  purrr::map(.f = ~mat2r(
        inMat           = .x
      , pathOutR       = sub('m$', "R", .x)
      , funcConverters = NULL
      , dataConverters = NULL
      , verbose        = 1
    )
  )
Related