optimized.sample.variance: Optimized sample variance

Description Usage Arguments Value Author(s) Examples

View source: R/optimized.sample.variance.R

Description

Draws an optimal sample that minimizes or maximizes the sample variance

Usage

1
optimized.sample.variance(x, n, type = "maximized")

Arguments

x

A vector to draw a sample from

n

Number of samples to draw

type

Type of sample variance optimization c("maximized", "minimized")

Value

A data.frame with "idx" representing the index of the original vector and "y" is the value of the sampled data

Author(s)

Jeffrey S. Evans <[email protected]>

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 library(sp)
   data(meuse)
   coordinates(meuse) <- ~x+y

 n = 15
 # Draw n samples that maximize the variance of y
 ( max.sv <- optimized.sample.variance(meuse$zinc, 15) )
 
 # Draw n samples that minimize the variance of y
 ( min.sv <- optimized.sample.variance(meuse$zinc, 15, type="minimized") )
 
 # Plot results
 plot(meuse, pch=19, col="grey")
   plot(meuse[max.sv$idx,], col="red", add=TRUE, pch=19)
     plot(meuse[min.sv$idx,], col="blue", add=TRUE, pch=19)
 	  box()
     legend("topleft", legend=c("population","maximized variance", 
            "minimized variance"), col=c("grey","red","blue"),  
            pch=c(19,19,19))

## Not run: 
 # Raster example (not memory safe) 
 library(raster)
   r <- raster(system.file("external/test.grd", package="raster"))
  
# Calculate optimal sample variance and coerce to SpatialPointDataFrame using xyFromCell
     ( min.sv <- optimized.sample.variance(getValues(r), n, type="minimized") )
      min.sv <- sp::SpatialPointsDataFrame(xyFromCell(r, min.sv[,"idx"], 
                                           spatial=TRUE), data=min.sv) 
     ( max.sv <- optimized.sample.variance(getValues(r), n) )
      max.sv <- sp::SpatialPointsDataFrame(xyFromCell(r, max.sv[,"idx"], 
                                           spatial=TRUE), data=max.sv)

 plot(r)
   plot(max.sv, col="blue", add=TRUE, pch=19)
   plot(min.sv, col="red", add=TRUE, pch=19)
   box()
 legend("topleft", legend=c("maximized variance", "minimized variance"),
        col=c("red","blue"), pch=c(19,19))
 
## End(Not run)  
 

jeffreyevans/spatialEco documentation built on Nov. 10, 2018, 4:13 a.m.