# --- Generate data sets
nclasses=2 # number of data sets / classes
n1<-n2<-20 # sample size for each data sets
p<-5 # number of response variables
M<-10 # number of predictor variables
W<-abs(matrix(rnorm(M*p),M,p)) # generate sampling scores
Res1<-matrix(rnorm(p*n1),p,n1) # generate response for class 1
Res2<-matrix(rnorm(p*n2),p,n2) # generate response for class 2
Cov1<-matrix(rnorm(M*n1),M,n1) # generate predictors for class 1
Cov2<-matrix(rnorm(M*n2),M,n2) # generate predictors for class 2
# --- Standardize variables to mean 0 and variance 1
Res1 <- t(apply(Res1, 1, function(x) { (x - mean(x)) / sd(x) } ))
Res2 <- t(apply(Res2, 1, function(x) { (x - mean(x)) / sd(x) } ))
# --- Run iJRF and obtain importance score of interactions
out.iJRF<-iJRF(X=list(Cov1,Cov2),Y=list(Res1,Res2),W=W)
# --- Run iJRF for P permutated data sets
out.perm<-iJRF_Perm(X=list(Cov1,Cov2),Y=list(Res1,Res2),W=W,P=2)
# --- Derive final networks
final.net<-Unweighted_Network(out.iJRF,out.perm,0.001)
Run the code above in your browser using DataCamp Workspace