MixedModels.jl icon indicating copy to clipboard operation
MixedModels.jl copied to clipboard

auto apply `Grouping()` to grouping variables

Open palday opened this issue 3 years ago • 1 comments

  • [x] add entry in NEWS.md
  • [x] after opening this PR, add a reference and run docs/NEWS-update.jl to update the cross-references.
  • [ ] I've bumped the version appropriately

palday avatar Oct 12 '22 03:10 palday

Codecov Report

Patch coverage is 100.00% of modified lines.

Files Changed Coverage
src/MixedModels.jl ø
src/grouping.jl 100.00%
src/linearmixedmodel.jl 100.00%
src/randomeffectsterm.jl 100.00%
src/schema.jl 100.00%

:loudspeaker: Thoughts on this report? Let us know!.

codecov[bot] avatar Oct 12 '22 04:10 codecov[bot]

@kleinschmidt I should update the comment, but it does work with interaction and nesting terms as grouping variables. For the cases where you want to override it (i.e., a variable appearing in a grouping term and in the fixed effects), the OOM is going to happen anyway when you compute the contrasts for the fixed effects. So I think that bit is okay.

I also think it feels wonky and brittle though. If I had a less brittle way to do it, I would it! I was hoping you had some insight. 😄

palday avatar Apr 12 '23 20:04 palday

Benchmark Report for /home/runner/work/MixedModels.jl/MixedModels.jl

Job Properties

  • Time of benchmarks:
    • Target: 1 Sep 2023 - 15:54
    • Baseline: 1 Sep 2023 - 16:00
  • Package commits:
    • Target: f68dcc
    • Baseline: d2a05a
  • Julia commits:
    • Target: bed2cd
    • Baseline: bed2cd
  • Julia command flags:
    • Target: None
    • Baseline: -Cnative,-J/opt/hostedtoolcache/julia/1.9.3/x64/lib/julia/sys.so,-g1,-O3,-e,using Pkg; Pkg.update(); Pkg.add(["BenchmarkTools", "StatsModels"])
  • Environment variables:
    • Target: None
    • Baseline: None

Results

A ratio greater than 1.0 denotes a possible regression (marked with :x:), while a ratio less than 1.0 denotes a possible improvement (marked with :white_check_mark:). Only significant results - results that indicate possible regressions or improvements - are shown below (thus, an empty table means that all benchmark results remained invariant between builds).

ID time ratio memory ratio
["crossed", "kb07:1"] 0.00 (5%) :white_check_mark: 0.00 (1%) :white_check_mark:
["crossed", "machines:1"] 1.09 (5%) :x: 1.09 (1%) :x:
["crossed", "ml1m:1"] 0.92 (5%) :white_check_mark: 0.77 (1%) :white_check_mark:
["crossed", "mrk17_exp1:1"] 0.01 (5%) :white_check_mark: 0.18 (1%) :white_check_mark:
["crossed", "penicillin:1"] 1.06 (5%) :x: 1.05 (1%) :x:
["crossedvector", "d3:1"] 0.79 (5%) :white_check_mark: 0.51 (1%) :white_check_mark:
["crossedvector", "kb07:2"] 1.16 (5%) :x: 1.03 (1%) :x:
["crossedvector", "kb07:3"] 1.00 (5%) 1.02 (1%) :x:
["crossedvector", "mrk17_exp1:2"] 0.90 (5%) :white_check_mark: 0.65 (1%) :white_check_mark:
["nested", "pastes:2"] 1.07 (5%) :x: 1.05 (1%) :x:
["singlevector", "sleepstudy:2"] 1.11 (5%) :x: 1.05 (1%) :x:
["singlevector", "sleepstudy:3"] 0.00 (5%) :white_check_mark: 0.00 (1%) :white_check_mark:
["singlevector", "sleepstudy:4"] 1.04 (5%) 1.04 (1%) :x:

Benchmark Group List

Here's a list of all the benchmark groups executed by this job:

  • ["crossed"]
  • ["crossedvector"]
  • ["nested"]
  • ["singlevector"]

Julia versioninfo

Target

Julia Version 1.9.3
Commit bed2cd540a1 (2023-08-24 14:43 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
      Ubuntu 22.04.3 LTS
  uname: Linux 5.15.0-1041-azure #48-Ubuntu SMP Tue Jun 20 20:34:08 UTC 2023 x86_64 x86_64
  CPU: Intel(R) Xeon(R) Platinum 8171M CPU @ 2.60GHz: 
              speed         user         nice          sys         idle          irq
       #1  2095 MHz       2182 s          0 s        283 s       4286 s          0 s
       #2  2095 MHz       5282 s          0 s        237 s       1214 s          0 s
  Memory: 6.7694854736328125 GB (4775.06640625 MB free)
  Uptime: 681.82 sec
  Load Avg:  1.0  1.06  0.73
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-14.0.6 (ORCJIT, skylake-avx512)
  Threads: 1 on 2 virtual cores

Baseline

Julia Version 1.9.3
Commit bed2cd540a1 (2023-08-24 14:43 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
      Ubuntu 22.04.3 LTS
  uname: Linux 5.15.0-1041-azure #48-Ubuntu SMP Tue Jun 20 20:34:08 UTC 2023 x86_64 x86_64
  CPU: Intel(R) Xeon(R) Platinum 8171M CPU @ 2.60GHz: 
              speed         user         nice          sys         idle          irq
       #1  2095 MHz       3947 s          0 s        422 s       6126 s          0 s
       #2  2095 MHz       8164 s          0 s        351 s       1974 s          0 s
  Memory: 6.7694854736328125 GB (4899.37109375 MB free)
  Uptime: 1057.71 sec
  Load Avg:  1.08  1.28  1.0
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-14.0.6 (ORCJIT, skylake-avx512)
  Threads: 1 on 2 virtual cores

github-actions[bot] avatar Sep 01 '23 03:09 github-actions[bot]