addTarget: Add a new target to TAS without re-running 'taShrink'

Description Usage Arguments Value See Also Examples

View source: R/addTarget.R

Description

Add a new target to TAS without re-running taShrink

Usage

1
addTarget(X, TASoutput, NEWtarget)

Arguments

X

matrix – data matrix with variables in rows and observations in columns. This method performs best when there are more variables than observations.

TASoutput

list – output from the taShrink function.

NEWtarget

matrix – a new target to add to the shrinkage estimation. Must have the same dimensions as the other targets.

Value

list – the updated TAS output having added the new target matrix to the target set.

See Also

taShrink

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
 set.seed(102)
 X <- matrix(rnorm(50), 10, 5) # p=10, n=5, identity covariance
 X <- t(scale(t(X), center=TRUE, scale=FALSE)) # mean 0
 targets <- getTargetSet(X)[,,c(1, 4, 7)] # use unit variance targets
 alpha <- seq(0.01, 0.99, length.out=100)
 tas <- taShrink(X, targets = targets[,,c(1, 3)], plots = FALSE)
 tw1 <- targetWeights(tas)
 barplot(tw1, names.arg = c("target1", "target2", "S"),
 main = "Target-specific shrinkage weights",
 col = c("red", "green", "purple"), space = 0, 
 xlab = "Target", ylab = "Weight")
 tas2 <- addTarget(X, tas, targets[,,2])
 tw2 <- targetWeights(tas2)
 par(mfrow=c(1, 2))
 barplot(tw1, names.arg = c("target1", "target2", "S"),
 main = "Target-specific shrinkage weights",
 col = c("red", "green", "purple"), space = 0, 
 xlab = "Target", ylab = "Weight")
 barplot(tw2, names.arg = c("target1", "target2", "target3", "S"),
 main = "Target-specific shrinkage weights",
 col = c("red", "green", "blue", "purple"), space = 0, 
 xlab = "Target", ylab = "Weight")
 par(mfrow=c(1, 1))
 plot(alpha, tas2$logmarginals[1,], col = 'red', pch = 16,
 ylab = "log marginal likelihoods", xlab = expression(alpha))
 points(alpha, tas2$logmarginals[2,], col = 'green', pch = 16)
 points(alpha, tas2$logmarginals[3,], col = 'blue', pch = 16)
 legend('bottomright', c("target1", "target2", "target3"), pch = 16,
   col=c('red', 'green', 'blue'))

HGray384/TAS documentation built on Dec. 14, 2020, 8:41 p.m.