3.3 KiB
TODO List
A TODO list for permute - or things I know are broken or needed.
-
summary.allPerms
- is not printing the permutation scheme. Done in 0.7-5 -
print.permControl
- this needs to be updated to new API, and I don't like the*** Foo ***
headings I used before. Done in 0.7-3 -
Need a way to update the permutation scheme, e.g. when a control object already exists and want to tweak it. Example is in
?allPerms
where I turn mirroring on viactrl$within$mirror <- TRUE
But how? Best idea currently is an
update.permControl
method. The generic is in namespacestats
. Or amodify()
function, perhaps coupled with specific replacement functions for certain components.DONE, in part, in 0.7-5 The matched call is now returned by
how()
and this allowsupdate()
to do its work with no further effort from me. What isn't so neat is that currently this means you need to type out in full any specification ofwithin
andplots
as these take the results of function calls. Hence we have, from./man/how.Rd
plts <- gl(4,10) blks <- gl(2,20) h1 <- how(within = Within(type = "series", mirror = TRUE), plots = Plots(strata = plts, type = "series"), blocks = blks) ## The design can be updated... ## ... remove the blocking: update(h1, blocks = NULL) ## ... or switch the type of shuffling at a level: update(h1, plots = Plots(strata = plts, type = "none"))
Where in the second
update()
the entirePlots()
call needs to repeated to change just one part, thetype
.This has been tweaked a bit. The second example can now be done via:
update(h1, plots = update(getPlots(h1), type = "none"))
Here
getPlots(h1)
returns theplots
component, which too has acall
component and hence can beupdate()
ed, hence the nested calls toupdate()
. -
permControl
- deprecate this in favour ofhow
as in "how to permute"? DONE Completed in 0.7-4 -
permuplot
- this may be fundamentally bust - it only worked in the original API and never got updated. Now the API is 2 versions further on! It is also more complex than the original - not sure it'll be easy without a lot of work to visualise all possible schemes. -
check
insists on returning all permutations without the observed one.DONE Completed somewhere, probably when I made observed only work via how()
-
The following example from
shuffleSet()
gives same number of permutations vianumPerms()
for both designs; should be fewer if same permutation within each plot.## 10 random permutations in presence of Plot-level strata plotStrata <- Plots(strata = gl(4,5)) CTRL <- how(plots = plotStrata, within = Within(type = "free")) shuffleSet(20, 10, control = CTRL) ## as above but same random permutation within Plot-level strata CTRL <- how(plots = plotStrata, within = Within(type = "free", constant = TRUE)) shuffleSet(20, 10, CTRL)
DONE in 0.8-0
-
Write an Rd page for the
"permutationMatrix"
S3 class where I can describe the object returned byshuffleSet()
and the methods available for it.DONE in 0.7-8