Description Usage Arguments Value See Also Examples
This function computes an approximation of the variance component test for
homogeneous trajectory based on the asymptotic distribution of a mixture of
χ^{2}s using Davies method from davies
1 | vc_score_h(y, x, indiv, phi, w, Sigma_xi = diag(ncol(phi)), na_rm = FALSE)
|
y |
a numeric matrix of dim |
x |
a numeric design matrix of dim |
indiv |
a vector of length |
phi |
a numeric design matrix of size |
w |
a vector of length |
Sigma_xi |
a matrix of size |
na_rm |
logical: should missing values (including |
A list with the following elements:
score
: approximation of the set observed score
q
: observation-level contributions to the score
q_ext
: pseudo-observations used to compute covariance
taking into account the contributions of OLS estimates
gene_scores
: approximation of the individual gene scores
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 43 44 45 46 47 48 49 50 51 | set.seed(123)
##generate some fake data
########################
ng <- 100
nindiv <- 30
nt <- 5
nsample <- nindiv*nt
tim <- matrix(rep(1:nt), nindiv, ncol=1, nrow=nsample)
tim <- cbind(tim, tim^2)
sigma <- 5
b0 <- 10
#under the null:
beta1 <- rnorm(n=ng, 0, sd=0)
#under the (heterogen) alternative:
beta1 <- rnorm(n=ng, 0, sd=0.1)
#under the (homogen) alternative:
beta1 <- rnorm(n=ng, 0.06, sd=0)
y.tilde <- b0 + rnorm(ng, sd = sigma)
y <- t(matrix(rep(y.tilde, nsample), ncol=ng, nrow=nsample, byrow=TRUE) +
matrix(rep(beta1, each=nsample), ncol=ng, nrow=nsample, byrow=FALSE)*
matrix(rep(tim, ng), ncol=ng, nrow=nsample, byrow=FALSE) +
matrix(rnorm(ng*nsample, sd = sigma), ncol=ng, nrow=nsample,
byrow=FALSE)
)
myindiv <- rep(1:nindiv, each=nt)
x <- cbind(1, myindiv/2==floor(myindiv/2))
myw <- matrix(rnorm(nsample*ng, sd=0.1), ncol=nsample, nrow=ng)
#run test
score_homogen <- vc_score_h(y, x, phi=tim, indiv=myindiv,
w=myw, Sigma_xi=cov(tim))
score_homogen$score
score_heterogen <- vc_score(y, x, phi=tim, indiv=myindiv,
w=myw, Sigma_xi=cov(tim))
score_heterogen$score
scoreTest_homogen <- vc_test_asym(y, x, phi=tim, indiv=rep(1:nindiv, each=nt),
w=matrix(1, ncol=ncol(y), nrow=nrow(y)),
Sigma_xi=cov(tim),
homogen_traj = TRUE)
scoreTest_homogen$set_pval
scoreTest_heterogen <- vc_test_asym(y, x, phi=tim, indiv=rep(1:nindiv,
each=nt),
w=matrix(1, ncol=ncol(y), nrow=nrow(y)),
Sigma_xi=cov(tim),
homogen_traj = FALSE)
scoreTest_heterogen$set_pval
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.