Actions | Code Coverage | Website | Doxygen | CRAN Downloads | CRAN |
---|---|---|---|---|---|
lhs
provides a number of methods for creating and augmenting Latin
Hypercube Samples and Orthogonal Array Latin Hypercube Samples.
- Reverse Dependency Checks
- Docker Images for Testing
- lhs-debug
- lhs-revdep built from here
You can install the released version of lhs
from
CRAN with:
install.packages("lhs")
You can also install the development version of lhs
from github with:
if (!require(devtools)) install.packages("devtools")
devtools::install_github("bertcarnell/lhs")
Create a random LHS with 10 samples and 3 variables:
require(lhs)
## Loading required package: lhs
set.seed(1776)
X <- randomLHS(n = 10, k = 3)
Create a design that is more optimal than the random case:
X_gen <- geneticLHS(10, 3, pop = 100, gen = 5, pMut = 0.1)
X_max1 <- maximinLHS(10, 3, method = "build", dup = 5)
X_max2 <- maximinLHS(10, 3, method = "iterative", optimize.on = "result", eps = 0.01, maxIter = 300)
X_imp <- improvedLHS(10, 3, dup = 5)
X_opt <- optimumLHS(10, 3, maxSweeps = 10, eps = 0.01)
Method | Mean Distance | Minimum Distance | |
---|---|---|---|
6 | optimum | 0.7289 | 0.4598 |
2 | genetic | 0.7190 | 0.4059 |
4 | maximin | 0.7246 | 0.3975 |
5 | improved | 0.7028 | 0.3872 |
3 | maximin | 0.7296 | 0.3611 |
1 | random | 0.7067 | 0.2709 |
Augment an existing design:
Y <- randomLHS(10, 5)
Z <- augmentLHS(Y, 2)
dim(Z)
## [1] 12 5
Build an orthogonal array LHS:
# a 9 row design is returned because a 10 row design is not possible with these algorithms
W9 <- create_oalhs(10, 3, bChooseLargerDesign = FALSE, bverbose = FALSE)
dim(W9)
## [1] 9 3
# a 16 row design is returned because a 10 row design is not possible with these algorithms
W16 <- create_oalhs(10, 3, bChooseLargerDesign = TRUE, bverbose = FALSE)
dim(W16)
## [1] 16 3
R-Help Examples of using the LHS package
- Latin hyper cube sampling from expand.grid()
- Latin Hypercube Sampling with a condition
- Latin Hypercube with condition sum = 1
- Latin hypercube sampling
- Latin Hypercube Sample and transformation to uniformly distributed integers or classes
- Latin hypercube sampling from a non-uniform distribution
- Latin Hypercube Sampling when parameters are defined according to specific probability distributions
StackExchange Examples:
- Latin Hypercube around set points
- Latin hypercube sampling with categorical variables
- Are Latin hypercube samples uncorrelated
- Stopping rule for Latin hypercube sampling (LHS)
- Is a group of random hypercube samples equivalent to a single latin hypercube with more samples?
- Taking samples of data using Latin Hypercube Sampling
- Number of parameter sets generated by latin hyercube sampling
- Is there a way to check if sample obeys the Latin Hypercube Sampling rule?
- Effectiveness of Latin Hypercube Sampling
- Dividing CDF rather than PDF equally in Latin Hypercube Sampling
- Stratified sampling / QMC simulation for compound Poisson rv
- Using Latin Hypercube Sampling with a condition that the sum of two variables should be less than one
- How to generate a design for a response surface with a discrete input random variable?
- Is it necessary to shuffle X coordinates in Latin hypercube Sampling?
lhs package announcement: R-pkgs New R-Packages: Triangle and LHS