alishinski / lavaanPlot

R package for plotting lavaan path models with DiagrammeR
http://alexlishinski.com/lavaanPlot/
38 stars 4 forks source link

Error in as.character.defaul #14

Closed b1azk0 closed 4 years ago

b1azk0 commented 5 years ago

Each time I try to plot my mediation model I get this error:

> lavaanPlot(model1)
Error in as.character.default(new("lavaan", version = "0.6.3", call = lavaan::lavaan(model = m,  : 
  no method for coercing this S4 class to a vector
>sessionInfo()
R version 3.5.2 (2018-12-20)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Manjaro Linux

Matrix products: default
BLAS/LAPACK: /opt/intel/compilers_and_libraries_2019.1.144/linux/mkl/lib/intel64_lin/libmkl_gf_lp64.so

other attached packages:
[1] lavaanPlot_0.5.1  DescTools_0.99.26 semPlot_1.1       lavaan_0.6-3      sjPlot_2.6.2      sjlabelled_1.0.15
[7] dplyr_0.7.8      
alishinski commented 5 years ago

Could you show me the code before this that you used to create the mediation model?

rempsyc commented 1 year ago

Just FYI I prepared an .Rmd file on my work laptop no problem, but then when I tried to knit it on my home computer, I started getting this error (both computers are on Windows 10). But not when ran locally in the console, only when knitted. Replicated in both R 4.2.3 and 4.3.0.

error in as character default

The script is available here in case you want to try to replicate it. But you might not be able to, as I was saying it was working no problem on my laptop. For reference, here's my session info for the problematic computer:

Session info
``` r > sessioninfo::session_info() ─ Session info ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── setting value version R version 4.3.0 (2023-04-21 ucrt) os Windows 10 x64 (build 19045) system x86_64, mingw32 ui RStudio language (EN) collate English_Canada.utf8 ctype English_Canada.utf8 tz America/Toronto date 2023-05-13 rstudio 2023.03.1+446 Cherry Blossom (desktop) pandoc 2.19.2 @ C:/Program Files/RStudio/resources/app/bin/quarto/bin/tools/ (via rmarkdown) ─ Packages ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── package * version date (UTC) lib source abind 1.4-5 2016-07-21 [1] CRAN (R 4.3.0) backports 1.4.1 2021-12-13 [1] CRAN (R 4.3.0) bain 0.2.8 2021-12-06 [1] CRAN (R 4.3.0) bayesplot 1.10.0 2022-11-16 [1] CRAN (R 4.3.0) blavaan 0.4-7 2023-03-01 [1] CRAN (R 4.3.0) boot 1.3-28.1 2022-11-22 [2] CRAN (R 4.3.0) callr 3.7.3 2022-11-02 [1] CRAN (R 4.3.0) car 3.1-2 2023-03-30 [1] CRAN (R 4.3.0) carData 3.0-5 2022-01-06 [1] CRAN (R 4.3.0) checkmate 2.2.0 2023-04-27 [1] CRAN (R 4.3.0) cli 3.6.1 2023-03-23 [1] CRAN (R 4.3.0) coda 0.19-4 2020-09-30 [1] CRAN (R 4.3.0) codetools 0.2-19 2023-02-01 [2] CRAN (R 4.3.0) colorspace 2.1-0 2023-01-23 [1] CRAN (R 4.3.0) CompQuadForm 1.4.3 2017-04-12 [1] CRAN (R 4.3.0) crayon 1.5.2 2022-09-29 [1] CRAN (R 4.3.0) curl 5.0.0 2023-01-12 [1] CRAN (R 4.3.0) data.table 1.14.8 2023-02-17 [1] CRAN (R 4.3.0) dbscan 1.1-11 2022-10-27 [1] CRAN (R 4.3.0) DiagrammeR 1.0.9 2022-03-05 [1] CRAN (R 4.3.0) digest 0.6.31 2022-12-11 [1] CRAN (R 4.3.0) dplyr 1.1.2 2023-04-20 [1] CRAN (R 4.3.0) evaluate 0.21 2023-05-05 [1] CRAN (R 4.3.0) fansi 1.0.4 2023-01-22 [1] CRAN (R 4.3.0) fastDummies 1.6.3 2020-11-29 [1] CRAN (R 4.3.0) fastmap 1.1.1 2023-02-24 [1] CRAN (R 4.3.0) future 1.32.0 2023-03-07 [1] CRAN (R 4.3.0) future.apply 1.10.0 2022-11-05 [1] CRAN (R 4.3.0) generics 0.1.3 2022-07-05 [1] CRAN (R 4.3.0) ggplot2 3.4.2 2023-04-03 [1] CRAN (R 4.3.0) globals 0.16.2 2022-11-21 [1] CRAN (R 4.3.0) glue 1.6.2 2022-02-24 [1] CRAN (R 4.3.0) gridExtra 2.3 2017-09-09 [1] CRAN (R 4.3.0) gsubfn 0.7 2018-03-16 [1] CRAN (R 4.3.0) gtable 0.3.3 2023-03-21 [1] CRAN (R 4.3.0) htmltools 0.5.5 2023-03-23 [1] CRAN (R 4.3.0) htmlwidgets 1.6.2 2023-03-17 [1] CRAN (R 4.3.0) httr 1.4.5 2023-02-24 [1] CRAN (R 4.3.0) igraph 1.4.2 2023-04-07 [1] CRAN (R 4.3.0) inline 0.3.19 2021-05-31 [1] CRAN (R 4.3.0) jsonlite 1.8.4 2022-12-06 [1] CRAN (R 4.3.0) knitr 1.42 2023-01-25 [1] CRAN (R 4.3.0) lattice 0.21-8 2023-04-05 [2] CRAN (R 4.3.0) lavaan 0.6-15 2023-03-14 [1] CRAN (R 4.3.0) lavaanPlot 0.6.2 2021-08-13 [1] CRAN (R 4.3.0) lifecycle 1.0.3 2022-10-07 [1] CRAN (R 4.3.0) listenv 0.9.0 2022-12-16 [1] CRAN (R 4.3.0) loo 2.6.0 2023-03-31 [1] CRAN (R 4.3.0) magrittr 2.0.3 2022-03-30 [1] CRAN (R 4.3.0) MASS 7.3-58.4 2023-03-07 [2] CRAN (R 4.3.0) Matrix 1.5-4 2023-04-04 [2] CRAN (R 4.3.0) matrixStats 0.63.0 2022-11-18 [1] CRAN (R 4.3.0) mnormt 2.1.1 2022-09-26 [1] CRAN (R 4.3.0) MplusAutomation 1.1.0 2022-04-06 [1] CRAN (R 4.3.0) munsell 0.5.0 2018-06-12 [1] CRAN (R 4.3.0) mvtnorm 1.1-3 2021-10-08 [1] CRAN (R 4.3.0) nlme 3.1-162 2023-01-31 [2] CRAN (R 4.3.0) nonnest2 0.5-5 2020-07-05 [1] CRAN (R 4.3.0) OpenMx 2.21.8 2023-04-05 [1] CRAN (R 4.3.0) pander 0.6.5 2022-03-18 [1] CRAN (R 4.3.0) parallelly 1.35.0 2023-03-23 [1] CRAN (R 4.3.0) pbivnorm 0.6.0 2015-01-23 [1] CRAN (R 4.3.0) pillar 1.9.0 2023-03-22 [1] CRAN (R 4.3.0) pkgbuild 1.4.0 2022-11-27 [1] CRAN (R 4.3.0) pkgconfig 2.0.3 2019-09-22 [1] CRAN (R 4.3.0) plyr 1.8.8 2022-11-11 [1] CRAN (R 4.3.0) prettyunits 1.1.1 2020-01-24 [1] CRAN (R 4.3.0) processx 3.8.1 2023-04-18 [1] CRAN (R 4.3.0) progressr 0.13.0 2023-01-10 [1] CRAN (R 4.3.0) proto 1.0.0 2016-10-29 [1] CRAN (R 4.3.0) ps 1.7.5 2023-04-18 [1] CRAN (R 4.3.0) psych 2.3.3 2023-03-18 [1] CRAN (R 4.3.0) quadprog 1.5-8 2019-11-20 [1] CRAN (R 4.3.0) R6 2.5.1 2021-08-19 [1] CRAN (R 4.3.0) RANN 2.6.1 2019-01-08 [1] CRAN (R 4.3.0) RColorBrewer 1.1-3 2022-04-03 [1] CRAN (R 4.3.0) Rcpp 1.0.10 2023-01-22 [1] CRAN (R 4.3.0) RcppParallel 5.1.7 2023-02-27 [1] CRAN (R 4.3.0) rlang 1.1.1 2023-04-28 [1] CRAN (R 4.3.0) rmarkdown 2.21 2023-03-26 [1] CRAN (R 4.3.0) rstan 2.26.22 2023-05-06 [1] local rstantools 2.3.1 2023-03-30 [1] CRAN (R 4.3.0) rstudioapi 0.14 2022-08-22 [1] CRAN (R 4.3.0) rticles 0.24 2022-08-25 [1] CRAN (R 4.3.0) sandwich 3.0-2 2022-06-15 [1] CRAN (R 4.3.0) scales 1.2.1 2022-08-20 [1] CRAN (R 4.3.0) sessioninfo 1.2.2 2021-12-06 [1] CRAN (R 4.3.0) StanHeaders 2.26.22 2023-05-06 [1] local stringi 1.7.12 2023-01-11 [1] CRAN (R 4.3.0) stringr 1.5.0 2022-12-02 [1] CRAN (R 4.3.0) texreg 1.38.6 2022-04-06 [1] CRAN (R 4.3.0) tibble 3.2.1 2023-03-20 [1] CRAN (R 4.3.0) tidyselect 1.2.0 2022-10-10 [1] CRAN (R 4.3.0) tidySEM 0.2.4 2023-05-01 [1] CRAN (R 4.3.0) tmvnsim 1.0-2 2016-12-15 [1] CRAN (R 4.3.0) utf8 1.2.3 2023-01-31 [1] CRAN (R 4.3.0) V8 4.3.0 2023-04-08 [1] CRAN (R 4.3.0) vctrs 0.6.2 2023-04-19 [1] CRAN (R 4.3.0) visNetwork 2.1.2 2022-09-29 [1] CRAN (R 4.3.0) xfun 0.39 2023-04-20 [1] CRAN (R 4.3.0) xtable 1.8-4 2019-04-21 [1] CRAN (R 4.3.0) yaml 2.3.7 2023-01-23 [1] CRAN (R 4.3.0) zoo 1.8-12 2023-04-13 [1] CRAN (R 4.3.0) [1] C:/Users/there/AppData/Local/R/win-library/4.3 [2] C:/Program Files/R/R-4.3.0/library #


<sup>Created on 2023-05-22 with [reprex v2.0.2](https://reprex.tidyverse.org)</sup>
rempsyc commented 1 year ago

Interestingly, I am able to reproduce the problem in a reprex:

packageVersion("lavaanPlot")
#> [1] '0.6.2'
packageVersion("lavaan")
#> [1] '0.6.15'
packageVersion("DiagrammeR")
#> [1] ‘1.0.10’

library(lavaan)
#> This is lavaan 0.6-15
#> lavaan is FREE software! Please report any bugs.

mod <- "x1 ~ x2"
fit <- sem(mod, data = HolzingerSwineford1939)
lavaanPlot::lavaanPlot(fit)
#> Error in as.character.default(new("lavaan", version = "0.6.15", call = lavaan::lavaan(model = mod, : no method for coercing this S4 class to a vector

Created on 2023-05-20 with reprex v2.0.2

Seems like I'm not the only one with this issue. See the first comments in this 2022 and 2021 stackoverflow answers. The error seems difficult to pinpoint however, I've tried regressing several packages (lavaanPlot, lavaan, DiagrammeR), R versions, updating all packages, and all MiKTeX packages. Nothing has worked so far. Seems like a bug with the computer itself?

rempsyc commented 1 year ago

For reference, session info on the working computer:

packageVersion("lavaanPlot")
#> [1] '0.6.3'
packageVersion("lavaan")
#> [1] '0.6.15'
packageVersion("DiagrammeR")
#> [1] '1.0.9'

library(lavaan)

mod <- "x1 ~ x2"
fit <- sem(mod, data = HolzingerSwineford1939)
lavaanPlot::lavaanPlot(fit)
Session info
``` r sessioninfo::session_info() #> ─ Session info ─────────────────────────────────────────────────────────────── #> setting value #> version R version 4.2.2 (2022-10-31 ucrt) #> os Windows 10 x64 (build 19045) #> system x86_64, mingw32 #> ui RTerm #> language (EN) #> collate English_Canada.utf8 #> ctype English_Canada.utf8 #> tz America/New_York #> date 2023-05-22 #> pandoc 2.19.2 @ C:/Program Files/RStudio/resources/app/bin/quarto/bin/tools/ (via rmarkdown) #> #> ─ Packages ─────────────────────────────────────────────────────────────────── #> package * version date (UTC) lib source #> chromote 0.1.1 2022-09-07 [1] CRAN (R 4.2.1) #> cli 3.6.1 2023-03-23 [1] CRAN (R 4.2.3) #> curl 5.0.0 2023-01-12 [1] CRAN (R 4.2.3) #> DiagrammeR 1.0.9 2022-03-05 [1] CRAN (R 4.1.3) #> digest 0.6.31 2022-12-11 [1] CRAN (R 4.2.2) #> ellipsis 0.3.2 2021-04-29 [1] CRAN (R 4.0.3) #> evaluate 0.21 2023-05-05 [1] CRAN (R 4.2.3) #> fastmap 1.1.1 2023-02-24 [1] CRAN (R 4.2.3) #> fs 1.6.2 2023-04-25 [1] CRAN (R 4.2.3) #> glue 1.6.2 2022-02-24 [1] CRAN (R 4.1.2) #> highr 0.10 2022-12-22 [1] CRAN (R 4.2.2) #> htmltools 0.5.5 2023-03-23 [1] CRAN (R 4.2.3) #> htmlwidgets 1.6.2 2023-03-17 [1] CRAN (R 4.2.3) #> httr 1.4.6 2023-05-08 [1] CRAN (R 4.2.3) #> jsonlite 1.8.4 2022-12-06 [1] CRAN (R 4.2.1) #> knitr 1.42 2023-01-25 [1] CRAN (R 4.2.2) #> later 1.3.0 2021-08-18 [1] CRAN (R 4.1.3) #> lavaan * 0.6-15 2023-03-14 [1] CRAN (R 4.2.3) #> lavaanPlot 0.6.3 2022-04-01 [1] Github (alishinski/lavaanPlot@96d8fb6) #> lifecycle 1.0.3 2022-10-07 [1] CRAN (R 4.2.1) #> magrittr 2.0.3 2022-03-30 [1] CRAN (R 4.1.3) #> mime 0.12 2021-09-28 [1] CRAN (R 4.0.5) #> mnormt 2.1.1 2022-09-26 [1] CRAN (R 4.2.1) #> pbivnorm 0.6.0 2015-01-23 [1] CRAN (R 4.0.3) #> processx 3.8.1 2023-04-18 [1] CRAN (R 4.2.3) #> promises 1.2.0.1 2021-02-11 [1] CRAN (R 4.0.4) #> ps 1.7.5 2023-04-18 [1] CRAN (R 4.2.3) #> purrr 1.0.1 2023-01-10 [1] CRAN (R 4.2.3) #> quadprog 1.5-8 2019-11-20 [1] CRAN (R 4.0.3) #> R.cache 0.16.0 2022-07-21 [1] CRAN (R 4.2.1) #> R.methodsS3 1.8.2 2022-06-13 [1] CRAN (R 4.2.0) #> R.oo 1.25.0 2022-06-12 [1] CRAN (R 4.2.0) #> R.utils 2.12.2 2022-11-11 [1] CRAN (R 4.2.2) #> R6 2.5.1 2021-08-19 [1] CRAN (R 4.0.5) #> RColorBrewer 1.1-3 2022-04-03 [1] CRAN (R 4.1.3) #> Rcpp 1.0.10 2023-01-22 [1] CRAN (R 4.2.3) #> reprex 2.0.2 2022-08-17 [1] CRAN (R 4.2.1) #> rlang 1.1.1 2023-04-28 [1] CRAN (R 4.2.3) #> rmarkdown 2.21 2023-03-26 [1] CRAN (R 4.2.2) #> rstudioapi 0.14 2022-08-22 [1] CRAN (R 4.2.1) #> sessioninfo 1.2.2 2021-12-06 [1] CRAN (R 4.2.1) #> stringi 1.7.12 2023-01-11 [1] CRAN (R 4.2.2) #> stringr 1.5.0 2022-12-02 [1] CRAN (R 4.2.1) #> styler 1.9.1 2023-03-04 [1] CRAN (R 4.2.3) #> vctrs 0.6.2 2023-04-19 [1] CRAN (R 4.2.3) #> visNetwork 2.1.2 2022-09-29 [1] CRAN (R 4.2.1) #> webshot 0.5.4 2022-09-26 [1] CRAN (R 4.2.3) #> webshot2 0.1.0 2022-05-18 [1] CRAN (R 4.2.1) #> websocket 1.4.1 2021-08-18 [1] CRAN (R 4.1.2) #> withr 2.5.0 2022-03-03 [1] CRAN (R 4.1.2) #> xfun 0.39 2023-04-20 [1] CRAN (R 4.2.3) #> xml2 1.3.3 2021-11-30 [1] CRAN (R 4.0.5) #> yaml 2.3.7 2023-01-23 [1] CRAN (R 4.2.2) #> #> [1] D:/Rpackages #> [2] C:/Program Files/R/R-4.2.2/library #> #> ────────────────────────────────────────────────────────────────────────────── #


<sup>Created on 2023-05-22 with [reprex v2.0.2](https://reprex.tidyverse.org)</sup>
rempsyc commented 1 year ago

Upgrading lavaanPlot to the development version, and knitr and igraph to the latest CRAN versions fixed this issue on the problematic computer 👌