Rev 87477 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
R Under development (unstable) (2024-12-29 r87480) -- "Unsuffered Consequences"Copyright (C) 2024 The R Foundation for Statistical ComputingPlatform: aarch64-apple-darwin24.2.0R is free software and comes with ABSOLUTELY NO WARRANTY.You are welcome to redistribute it under certain conditions.Type 'license()' or 'licence()' for distribution details.R is a collaborative project with many contributors.Type 'contributors()' for more information and'citation()' on how to cite R or R packages in publications.Type 'demo()' for some demos, 'help()' for on-line help, or'help.start()' for an HTML browser interface to help.Type 'q()' to quit R.> ### examples from investigating UBSAN reports in vcdExtra::seq_loglm>> x <- margin.table(Titanic, 1)> ## Next two had UBSAN reports in R 4.5.0 from using --x on a 0-length R-allocated array.> loglin(x, NULL)0 iterations$lrt[1] 475.8113$pearson[1] 467.8069$df[1] 3$marginNULL> loglin(x, list())0 iterations$lrt[1] 475.8113$pearson[1] 467.8069$df[1] 3$marginlist()>> loglin(x, list(1))2 iterations: deviation 0$lrt[1] 0$pearson[1] 0$df[1] 0$margin$margin[[1]][1] "Class">> ## failed in R 4.4.2 as R code assumed >= 2 parameters> loglin(x, NULL, param = TRUE)0 iterations$lrt[1] 475.8113$pearson[1] 467.8069$df[1] 3$marginNULL$param$param$`(Intercept)`[1] 6.310373> loglin(x, list(1), param = TRUE)2 iterations: deviation 0$lrt[1] 0$pearson[1] 0$df[1] 0$margin$margin[[1]][1] "Class"$param$param$`(Intercept)`[1] 6.195379$param$Class1st 2nd 3rd Crew-0.4115541 -0.5428901 0.3642359 0.5902083>>> ## Versions of some MASS::loglm examples> # loglm(~ Type + Origin, xtabs(~ Type + Origin, Cars93))> if(require("MASS", quietly = TRUE))+ loglin(xtabs(~ Type + Origin, Cars93), list(Type=1, Origin=2))2 iterations: deviation 0$lrt[1] 18.36179$pearson[1] 14.07985$df[1] 5$margin$margin$Type[1] "Type"$margin$Origin[1] "Origin">> # fm <- loglm(~ 1 + 2 + 3 + 4, minn38a)> mn <- structure(c(53L, 163L, 309L, 13L, 28L, 38L, 7L, 30L, 17L, 76L,+ 118L, 89L, 36L, 116L, 225L, 11L, 53L, 68L, 16L, 41L,+ 49L, 111L, 214L, 210L, 52L, 162L, 243L, 49L, 129L,+ 284L, 28L, 64L, 79L, 521L, 708L, 448L, 48L, 130L,+ 237L, 29L, 62L, 63L, 18L, 47L, 57L, 191L, 305L, 219L,+ 12L, 35L, 72L, 10L, 37L, 21L, 5L, 11L, 20L, 101L,+ 152L, 95L, 9L, 19L, 42L, 15L, 22L, 19L, 1L, 13L, 10L,+ 130L, 174L, 105L, 3L, 25L, 36L, 6L, 15L, 19L, 1L, 9L,+ 14L, 88L, 158L, 93L, 87L, 216L, 256L, 17L, 14L, 10L,+ 3L, 4L, 2L, 105L, 118L, 53L, 72L, 159L, 176L, 18L,+ 28L, 22L, 6L, 14L, 8L, 209L, 227L, 95L, 52L, 119L,+ 119L, 14L, 44L, 33L, 17L, 13L, 10L, 541L, 578L, 257L,+ 88L, 158L, 144L, 14L, 36L, 20L, 9L, 15L, 12L, 328L,+ 304L, 115L, 32L, 43L, 42L, 12L, 7L, 7L, 1L, 5L, 2L,+ 124L, 119L, 56L, 14L, 24L, 24L, 5L, 15L, 4L, 2L, 6L,+ 2L, 148L, 131L, 61L, 20L, 41L, 32L, 4L, 13L, 4L, 3L,+ 5L, 2L, 109L, 88L, 41L),+ dim = c(3L, 4L, 7L, 2L),+ dimnames = list(hs = c("L", "M", "U"),+ phs = c("C", "E", "N", "O"),+ fol = c("F1", "F2", "F3", "F4", "F5", "F6", "F7"),+ sex = c("F", "M")))> loglin(mn, list(hs = 1, phs = 2, fol = 3, sex = 4), param = TRUE)2 iterations: deviation 1.818989e-12$lrt[1] 3711.914$pearson[1] 4161.597$df[1] 155$margin$margin$hs[1] "hs"$margin$phs[1] "phs"$margin$fol[1] "fol"$margin$sex[1] "sex"$param$param$`(Intercept)`[1] 3.821018$param$hsL M U-0.22433867 0.18885681 0.03548186$param$phsC E N O0.5314514 -0.5543160 -1.2296056 1.2524702$param$folF1 F2 F3 F4 F5 F60.07299887 0.25202915 0.98907052 0.44505330 -0.50834637 -0.53414145F7-0.71666403$param$sexF M0.1181181 -0.1181181>> proc.time()user system elapsed0.074 0.014 0.085