Generating network feature matrix

Share:

Description

This functions generates a feature matrix containing 33 network characteristics by differential network analysis.

Usage

1
2
3
4
5
6
7
8
netFeatureMatrix( net1, net2, nodes = NULL, knodes = NULL, 
                  cpus = 1, verbose = TRUE, netResFileDic,
                  features = c( "expDistance", "ASC", "corDistance", 
                                "AllConnectivity", "PosConnectivity", 
                                 "NegConnectivity", "closeness", 
                                 "eccentricity", "eigenvector", 
                                 "page.rank", "dis2knodes", 
                                 "closeness2knodes", "eccenticity2knodes") )

Arguments

net1

exp2net output for condition 1.

net2

exp2net output for condition 2.

nodes

a character vector, a set of genes will be analyzed.

knodes

a character vector, a set of interested genes (e.g., known stress-related genes).

cpus

an integrator value, the number of cpus will be used for parallel computing.

verbose

logical value indicate whether the progress information will be output.

netResFileDic

file directory where the network-related results will be output.

features

a character vector specifying the network characteristics will be analyzed.

Value

a numeric matrix, feature matrix generated from network comparision analysis.

Note

1) More information about these network properties has been described in (Ma and Wang, 2013).

2) To run netFeatureMatrix, the parameters "v" and "to" in "exp2net" function should be the whole genes in expmat.

Author(s)

Chuang Ma, Xiangfeng Wang.

References

[1] Chuang Ma, Xiangfeng Wang. Machine learning-based differential network analysis:a case study of stress-responsive transcriptomes in Arabidopsis thaliana. 2013(Submitted).

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
30
31
32
33
34
35
36
## Not run: 
   
   ##suppose the network-related results are stored at:
   netResFileDic = "/home/wanglab/mlDNA/network/"
   
   ##only consider a subset of genes here
   genes <- unique ( c( rownames(ControlExpMat)[1:1000], positiveSamples[1:100] ) )
   res_ControlSub <- exp2net( expmat = ControlExpMat[genes,], method = "GCC", 
                              pvalue = 0.01, cpus = 6, expDescribe = "Control_Sub", 
                              connListFlag = TRUE, distmatFlag = TRUE, 
                              saveType = "bigmatrix", netResFileDic = netResFileDic, 
                              v = genes, to = genes )
                   
    res_StressSub <- exp2net( expmat = SaltExpMat[genes,], method = "GCC", 
                              pvalue = 0.01, cpus = 6, expDescribe = "Stress_Sub", 
                              connListFlag = TRUE, distmatFlag = TRUE, 
                              saveType = "bigmatrix", netResFileDic = netResFileDic, 
                              v = genes, to = genes )

    ##generate network feature matrix
    nodes <- genes
    knodes <- intersect( genes, positiveSamples )
    netFeatureMat <- netFeatureMatrix( net1 = res_ControlSub, net2 = res_StressSub, 
                                       nodes = nodes, knodes = knodes, 
                                       cpus = 2, verbose = TRUE, 
                                       netResFileDic = netResFileDic,
                                       features = c( "expDistance", "ASC", 
                                             "corDistance", "AllConnectivity", 
                                             "PosConnectivity", "NegConnectivity", 
                                             "closeness","eccentricity", 
                                             "eigenvector", "page.rank", 
                                             "dis2knodes", "closeness2knodes", 
                                             "eccenticity2knodes") )
                                                     

## End(Not run)