inst/doc/defining-structure.R

## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)

## ----setup--------------------------------------------------------------------
library(edibble)

## -----------------------------------------------------------------------------
design("Wheat field trial")

## -----------------------------------------------------------------------------
demo <- design("Demo for defining units") %>% 
  set_units(site = 4)

## -----------------------------------------------------------------------------
demo

## -----------------------------------------------------------------------------
serve_table(demo)

## -----------------------------------------------------------------------------
design("Character vector input demo") %>% 
  set_units(site = c("Narrabri", "Horsham", "Parkes", "Roseworthy")) %>% 
  serve_table()

## -----------------------------------------------------------------------------
design("Numeric vector input demo") %>% 
  set_units(site = c(1, 2, 3, 4)) %>% 
  serve_table()

## -----------------------------------------------------------------------------
design("Single numeric level demo") %>% 
  set_units(site = lvls(4)) %>% 
  serve_table()

## -----------------------------------------------------------------------------
demo2 <- demo %>% 
  set_units(plot = 72)

## -----------------------------------------------------------------------------
serve_table(demo2)

## -----------------------------------------------------------------------------
demo %>% 
  set_units(plot = nested_in(site, 18)) %>% 
  serve_table()

## -----------------------------------------------------------------------------
demo2 %>% 
  allot_units(site ~ plot) %>% 
  assign_units(order = "systematic-fastest") %>% 
  serve_table()

## -----------------------------------------------------------------------------
design("Crossed experiment") %>% 
  set_units(row = 6,
            col = 3,
            plot = crossed_by(row, col)) %>% 
  serve_table()

## -----------------------------------------------------------------------------
options(pillar.print_min = 20)

## -----------------------------------------------------------------------------
complex <- design("Complex structure") %>% 
  set_units(site = c("Narrabri", "Horsham", "Parkes", "Roseworthy"),
            col = nested_in(site, 6),
            row = nested_in(site, 3),
            plot = nested_in(site, crossed_by(row, col))) 

serve_table(complex)

## -----------------------------------------------------------------------------
serve_table(complex, label_nested = c(row, col))

## -----------------------------------------------------------------------------
complexd <- design("Complex structure with different dimensions") %>% 
  set_units(site = c("Narrabri", "Horsham", "Parkes", "Roseworthy"),
             col = nested_in(site, 
                      c("Narrabri", "Roseworthy") ~ 9,
                                                . ~ 6),
             row = nested_in(site, 3),
            plot = nested_in(site, crossed_by(row, col))) 

complextab <- serve_table(complexd, label_nested = everything())
table(complextab$site)

## -----------------------------------------------------------------------------
factrt <- design("Factorial treatment") %>% 
  set_trts(variety = c("a", "b"),
           fertilizer = c("A", "B"),
           amount = c(0.5, 1, 2)) 

## -----------------------------------------------------------------------------
trts_table(factrt)

## -----------------------------------------------------------------------------
factrtc <- design("Factorial treatment with control") %>% 
  set_trts(variety = c("a", "b"),
           fertilizer = c("none", "A", "B"),
           amount = conditioned_on(fertilizer,
                                    "none" ~ 0,
                                         . ~ c(0.5, 1, 2)))

## -----------------------------------------------------------------------------
trts_table(factrtc)

## -----------------------------------------------------------------------------
complexd + factrtc

## -----------------------------------------------------------------------------
alloted1 <- (complexd + factrtc) %>% 
  allot_trts(    fertilizer ~ row,
             amount:variety ~ plot)

## -----------------------------------------------------------------------------
design1 <- alloted1 %>% 
  assign_trts(order = c("systematic", "random"),
              seed = 2023) %>% 
  serve_table(label_nested = c(row, col))

## ----design2------------------------------------------------------------------
design2 <- (complexd + factrtc) %>% 
  allot_table(fertilizer ~ row,
                  amount ~ plot,
                 variety ~ plot, 
              order = c("systematic", "random", "random"),
              label_nested = c(row, col),
              seed = 2023)

## ----design3------------------------------------------------------------------
design3 <- alloted1 %>% 
  assign_trts(order = c("systematic", "random"),
              seed = 2023, 
              constrain = list(row = "site", plot = "row")) %>% 
  serve_table(label_nested = c(row, col))

## ----design2------------------------------------------------------------------
design2 <- (complexd + factrtc) %>% 
  allot_table(fertilizer ~ row,
                  amount ~ plot,
                 variety ~ plot, 
              order = c("systematic", "random", "random"),
              label_nested = c(row, col),
              seed = 2023)

## ----design3------------------------------------------------------------------
design3 <- alloted1 %>% 
  assign_trts(order = c("systematic", "random"),
              seed = 2023, 
              constrain = list(row = "site", plot = "row")) %>% 
  serve_table(label_nested = c(row, col))

Try the edibble package in your browser

Any scripts or data that you put into this service are public.

edibble documentation built on June 22, 2024, 11:04 a.m.