Title: | Kendall's Tau Partial Corr. for Survival Trait and Biomarkers |
---|---|
Description: | We propose the inverse probability-of-censoring weighted (IPCW) Kendall's tau to measure the association of the survival trait with biomarkers and Kendall's partial correlation to reflect the relationship of the survival trait with interaction variable conditional on main effects, as described in Wang and Chen (2020) <doi:10.1093/bioinformatics/btaa017>. |
Authors: | Jie-Huei Wang, and Yi-Hau Chen |
Maintainer: | Jie-Huei Wang <[email protected]> |
License: | GPL (>= 2) |
Version: | 1.0 |
Built: | 2024-11-27 06:31:01 UTC |
Source: | CRAN |
The function proposes the inverse probability-of-censoring weighted (IPCW) Kendall's tau to measure the association of the survival trait with biomarkers and Kendall's partial correlation to reflect the relationship of the survival trait with interaction variable conditional on main effects, as described in Wang and Chen (2020) <doi:10.1093/bioinformatics/btaa017>.
IPCWK(data, standarize)
IPCWK(data, standarize)
data |
The |
standarize |
Setting to "FALSE", point out the original gene espressions profiles are not standarized. We are going to standarize the gene features automatically by IPCWK function. Setting to "TRUE", point out the original gene espressions profiles have been standarized. We maintain the original gene features matrix to do the following analysis. |
Returns a list with components
CORR |
The |
Wang JH, and Chen YH* (2020) Interaction Screening by Kendall's Partial Correlation for Ultrahigh-dimensional Data with Survival Trait. published in Bioinformatics <doi:10.1093/bioinformatics/btaa017>.
set.seed(123) library(MASS) library(survival) numbeta=50 N=100 beta0=matrix(0, numbeta, 1) sigma1=0.5^abs(outer(1:numbeta, 1:numbeta, "-")) W1=mvrnorm(N, beta0, sigma1, tol=1e-8, empirical=FALSE) Z1=W1^2-1 ### produce quadratic and two-way interaction effects ### tempZZ1=matrix(Z1^2, N, numbeta) tempZZ2=model.matrix(~(.)^2 - . -1, data=data.frame(Z1)) AZ=cbind(Z1, cbind(tempZZ1, tempZZ2)) ### identify true predictors: G1, G10, G1&G1, G10&G10, G1&G10, G10&G20 ### a=3 beta=matrix(0, dim(AZ)[2], 1) beta[1,]=-0.8*a beta[10,]=a beta[51,]=1.2*a beta[60,]=a beta[109,]=-1.2*a beta[515,]=a ### simulate survival time follows linear transformation model ### C=matrix(runif(N,0,1), N, 1) ST=X=S=matrix(0, N, 1) temp=rexp(N) ST=as.numeric(0.5*log(2*temp*exp(-AZ%*%beta)+1)) X=pmin(ST, C) S=(ST==X) survdata=cbind(X, S, Z1) ### perform IPCWK function ### test=IPCWK(data=survdata, standarize="FALSE") true=which(beta!=0) sum(order(-abs(test$CORR[1,]))[1:20] %in% true) ### IPCW-tau sum(order(-abs(test$CORR[2,]))[1:20] %in% true) ### Kendall's tau sum(order(-abs(test$CORR[3,]))[1:20] %in% true) ### PC-IPCW-tau
set.seed(123) library(MASS) library(survival) numbeta=50 N=100 beta0=matrix(0, numbeta, 1) sigma1=0.5^abs(outer(1:numbeta, 1:numbeta, "-")) W1=mvrnorm(N, beta0, sigma1, tol=1e-8, empirical=FALSE) Z1=W1^2-1 ### produce quadratic and two-way interaction effects ### tempZZ1=matrix(Z1^2, N, numbeta) tempZZ2=model.matrix(~(.)^2 - . -1, data=data.frame(Z1)) AZ=cbind(Z1, cbind(tempZZ1, tempZZ2)) ### identify true predictors: G1, G10, G1&G1, G10&G10, G1&G10, G10&G20 ### a=3 beta=matrix(0, dim(AZ)[2], 1) beta[1,]=-0.8*a beta[10,]=a beta[51,]=1.2*a beta[60,]=a beta[109,]=-1.2*a beta[515,]=a ### simulate survival time follows linear transformation model ### C=matrix(runif(N,0,1), N, 1) ST=X=S=matrix(0, N, 1) temp=rexp(N) ST=as.numeric(0.5*log(2*temp*exp(-AZ%*%beta)+1)) X=pmin(ST, C) S=(ST==X) survdata=cbind(X, S, Z1) ### perform IPCWK function ### test=IPCWK(data=survdata, standarize="FALSE") true=which(beta!=0) sum(order(-abs(test$CORR[1,]))[1:20] %in% true) ### IPCW-tau sum(order(-abs(test$CORR[2,]))[1:20] %in% true) ### Kendall's tau sum(order(-abs(test$CORR[3,]))[1:20] %in% true) ### PC-IPCW-tau