lait.stat {st} | R Documentation |
Correlation-Predicted t-Statistic
Description
lait.stat
, laicat.fun
, and lai.tscore
compute the “correlation-predicted” t-statistic of Lai (2008).
Usage
lait.stat(X, L, f=0.2, verbose=TRUE)
lait.fun(L, f=0.2, verbose=TRUE)
lai.tscore(gene, tscore, corr, f=0.2, plot=FALSE)
Arguments
X |
data matrix. Note that the columns correspond to variables (“genes”) and the rows to samples. |
L |
vector with class labels for the two groups. |
verbose |
print out some (more or less useful) information during computation. |
f |
smoother span used in |
gene |
the gene for which the Lai t-score is computed |
tscore |
a vector with t-scores |
corr |
a matrix containing correlations |
plot |
show scatter plot correlations versus t-scores with predicted t-score |
Details
The correlation-predicted t-statistic for a gene is the t-score predicted by local linear regression using all other genes. For mathematical details see Lai (2008).
Value
lait.stat
returns a vector containing correlation-predicted t-statistic for each variable/gene.
The corresponding lait.fun
functions return a function that
computes the correlation-shared t-statistic when applied to a data matrix
(this is very useful for simulations).
The function lai.tscore
allows to compute the correlation-predicted t-statistic
for a gene given a correlation matrix and a vector of t-statistics.
Author(s)
Verena Zuber and Korbinian Strimmer (https://strimmerlab.github.io).
References
Lai, Y.. 2008. Genome-wide co-expression based prediction of differential expression. Bioinformatics 24:666-673.
See Also
Examples
# load st library
library("st")
# prostate data set
data(singh2002)
X = singh2002$x
L = singh2002$y
dim(X) # 102 6033
length(L) # 102
# compute correlation-predicted t-score for various choices
# of smoothing span
## Not run:
score1 = lait.stat(X, L, f=0.1)
idx1 = order(abs(score1), decreasing=TRUE)
idx1[1:10]
# 1072 297 1130 4495 4523 4041 1089 955 373 3848
score3 = lait.stat(X, L, f=0.3)
idx3 = order(abs(score3), decreasing=TRUE)
idx3[1:10]
# 1130 962 1688 1223 583 1118 955 297 698 1219
score5 = lait.stat(X, L, f=0.5)
idx5 = order(abs(score5), decreasing=TRUE)
idx5[1:10]
# 698 962 1223 1219 739 1172 583 694 3785 3370
score7 = lait.stat(X, L, f=0.7)
idx7 = order(abs(score7), decreasing=TRUE)
idx7[1:10]
# 698 739 1219 962 3785 725 694 735 3370 1172
# pick the one with highest correlation to Student t score
t = studentt.stat(X, L)
cor(t, score1, method="spearman") # 0.4265832
cor(t, score3, method="spearman") # 0.471273
cor(t, score5, method="spearman") # 0.4750564
cor(t, score7, method="spearman") # 0.4666669
# focus on gene 19
t = studentt.stat(X, L)
R = cor(centroids(X, L, lambda.var=0, centered.data=TRUE,
verbose=TRUE)$centered.data)
lai.tscore(gene=19, t, R, f=0.5, plot=TRUE)
## End(Not run)