kda2himmeli.exec {Mergeomics} | R Documentation

## Evaluate each module separately for visualization

### Description

`kda2himmeli.exec` deals with the modules individually; takes a particular amount of top key drivers of the given module in company with the top key driver lists and colormap of all modules; traces module memberships and produces colormap, it finds the edge and node lists for the top key drivers and their neighborhood for a given module.

### Usage

    kda2himmeli.exec(job, valdata, drivers, modpool, palette)

### Arguments

`job` | data list including entire graph, nodes, modules information
`valdata` | GWAS pvalues of top loci of the nodes - if this information is available, sizes of the nodes in the figure will be correlated with the p-value of the top loci of the nodes -
`drivers` | top key drivers of the specified module
`modpool` | unique key driver list for all modules
`palette` | assigned unique color map for all modules

### Value

`res` | uniquely identified node and edge lists of the members belonging to the given module

### Author(s)

Ville-Petteri Makinen

### References

Shu L, Zhao Y, Kurt Z, Byars SG, Tukiainen T, Kettunen J, Orozco LD, Pellegrini M, Lusis AJ, Ripatti S, Zhang B, Inouye M, Makinen V-P, Yang X. Mergeomics: multidimensional data integration to identify pathogenic perturbations to biological systems. BMC genomics. 2016;17(1):874.

### See Also

`kda2himmeli`

### Examples

    ## get the prepared and KDA applied dataset:(see kda.analyze for details)
    data(job_kda_analyze)
    ## set the relevant parameters:
    job.kda$label<-"HDLC"
    ## parent folder for results
    job.kda$folder<-"Results"
    ## Input a network
    ## columns: TAIL HEAD WEIGHT
    job.kda$netfile<-system.file("extdata","network.mouseliver.mouse.txt",
    package="Mergeomics")
    ## Gene sets derived from ModuleMerge, containing two columns, MODULE,
    ## NODE, delimited by tab
    job.kda$modfile<- system.file("extdata","mergedModules.txt",
    package="Mergeomics")
    job.kda$nodfile <- system.file("extdata","msea2kda.nodes.txt",
    package="Mergeomics")
    ## "0" means we do not consider edge weights while 1 is opposite.
    job.kda$edgefactor<-0.0
    ## The searching depth for the KDA
    job.kda$depth<-1
    ## 0 means we do not consider the directions of the regulatory interactions
    ## while 1 is opposite.
    job.kda$direction <- 1

    ## Finish the KDA process
    job.kda <- kda.finish(job.kda)

    ## Get valdata including marker pvals
    valdata <- tool.read(job.kda$nodfile)
    z <- as.double(valdata$VALUE)
    z <- (z/quantile(z, 0.95) + rank(z)/length(z))
    valdata$SIZE <- pmin(4.0, z)
    ## Select subset of genes.
    valdata <- kda2himmeli.identify(valdata, "NODE", job.kda$graph$nodes)

    ## Select top key drivers from each module.
    ## First, take module names from kda results
    modules <- unique(job.kda$results$MODULE)
    ## Take top 2 KDs:
    drivers <- kda2himmeli.drivers(job.kda$results, modules, ndriv=2)
    drivers <- as.data.frame(drivers)
    colnames(drivers) <- c("MODULE" , "NODE")

    mods <- unique(drivers$MODULE)
    modnames <- job.kda$modules[mods]
    modnames[which(mods == 0)] <- "NON.MODULE"
    palette <- kda2himmeli.colormap(length(mods))
    palette[,which(mods == 0)] <- c(90,90,90)
    drivers$MODNAMES <- modnames[match(drivers$MODULE, mods)]
    drivers$NODNAMES <- job.kda$graph$nodes[drivers$NODE]
    for(i in 1:nrow(drivers))
    drivers$COLOR[i] <- paste(palette[1, match(drivers$MODULE[i], mods)],
    palette[2, match(drivers$MODULE[i], mods)],
    palette[3, match(drivers$MODULE[i], mods)], collapse=" ")
    ## Process each module separately. Just perform for the 1st module:
    i <- 1
    rows <- which(drivers$MODULE == mods[i])
    if(length(rows) > 0)
    tmp <- kda2himmeli.exec(job.kda, valdata, drivers[rows,], mods, palette)

    ## remove the results folder
    unlink("Results", recursive = TRUE)

[Package Mergeomics version 1.18.0 Index]