imsig

Immune Cell Gene Signatures for Profiling the Microenvironment of Solid Tumours

https://github.com/ajitjohnson/imsig

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.8%) to scientific vocabulary

Keywords

cancer deconvolution immune transcriptomics
Last synced: 6 months ago · JSON representation

Repository

Immune Cell Gene Signatures for Profiling the Microenvironment of Solid Tumours

Basic Info
  • Host: GitHub
  • Owner: ajitjohnson
  • Language: R
  • Default Branch: master
  • Size: 285 KB
Statistics
  • Stars: 25
  • Watchers: 3
  • Forks: 7
  • Open Issues: 3
  • Releases: 0
Topics
cancer deconvolution immune transcriptomics
Created over 7 years ago · Last pushed about 5 years ago
Metadata Files
Readme

README.md

imsig: Immune Cell Gene Signatures for Profiling the Microenvironment of Solid Tumours

ImSig is a set of gene signatures that can be used to estimate the relative abundance of immune cells in tissue transcriptomics data especially in cancer datasets.

The basic principle behind ImSig analysis is that for a given immune cell type to be called as present in a dataset, it is not sufficient for the signature genes to be expressed but also need to be co-expressed. ImSig genes were designed to be co-expressed in tissue transcriptomic data and so failure to co-express in the user's dataset may indicate its absence. Once the user has identified the cell types present in their dataset, they can compute its relative abundance and carry out survival analysis with this package.

Citation

Immune Cell Gene Signatures for Profiling the Microenvironment of Solid Tumors
Ajit J. Nirmal, Tim Regan, Barbara B. Shih, David A. Hume, Andrew H. Sims and Tom C. Freeman
Cancer Immunol Res November 1 2018 (6) (11) 1388-1400; DOI: 10.1158/2326-6066.CIR-18-0342

Requirements

Mandatory

Expression matrix of transcriptomics data, with HGNC gene symbols in rows and samples in columns. The Gene symbols need to be set as rownames and duplicates are not allowed. Missing values are also not allowed within the expression matrix. After installing and loading ImSig, type head(example_data) in the R console to view an example expression file.

The expression matrix can be imported into R using something similar to the basic syntax below.

exp = read.table('exp.txt', header = T, row.names = 1, sep = '\t')

Optional

Survival data (event and time to event) for the set of patients is required if the effect of immune infiltration in patients prognosis is to be determined. The sample names in the expression matrix and the survival data need to be the same. The package will automatically consider only the patients that are common to both the expression matrix and survival data. After installing and loading ImSig, type head(example_cli) in the R console to view an example survival file.

The survival metadata can be imported into R using something similar to the basic syntax below.

cli = read.table('cli.txt', header = T, row.names = 1, sep = '\t')

Usage

Install package

install.packages("imsig") library("imsig")

To use the latest developmental version

``` if( !require(devtools) ) install.packages("devtools") devtools::installgithub( "ajitjohnson/imsig", INSTALLopts = "--no-multiarch")

Load the package

library("imsig")

```

Get an idea of the imported data

gene_stat (exp = exp, r = 0.7)

This function returns a table of basic stats on the data. I would recommend to first take a look at the number of genes that overlap between ImSig and the imported expression data. Like all deconvolution methods, ImSig works best when all genes are available. An overlap of at least 75% is recommended. Secondly, I would look at the number of feature selected genes. Feature selection essentially removes genes below the user-defined correlation threshold (r). A simple interpretation of this field would be that, when a large number of signature genes are lost due to feature selection, it may indicate the absence of the cell type. This is because, in contrary to other signatures and deconvolution methods ImSig was designed to be co-expressed in tissues and so when they do not co-express, it may indicate the absence of that cell type. Finally, I would look at the median correlation values. Again poor median correlation values may indicate the absence of the cell type. For example, if you run a blood dataset, you will find that the macrophage signature genes will show a very low median correlation value since macrophages are not present in the blood.

This function can be run with different correlation thresholds (r) to determine the optimal value to be used for subsequent analysis. I would suggest picking a value that retains a large number of genes after feature selection, with a reasonably high median correlation value across cell types.

Run ImSig algorithm

imsig (exp = exp, r = 0.7)

This function returns a table of the relative abundance of immune cells across samples and ordered based on the relative abundance of T cells. If you would like to plot the results you could export the results or use the inbuilt function,

plot_abundance (exp = exp, r = 0.7)

Note, that the patients are ordered in the same way as in the table generated above.

It is also possible to generate a network graph of the ImSig genes. This can complement the gene_stat function, to visually determine which cell types are likely to be present in the user's dataset. The network graph can be generated by running the following command.

plot_network (exp = exp, r = 0.7)

The network can be fine tuned by adding additional arguments. check ?plot_network for all available arguments.

Survival analysis

If survival information is available, the Cox proportional hazard ratio can be calculated. The function first calculates the relative abundance of immune cells and then divides the patients into two groups ('high' and 'low' immune content) based on their median abundance value. A survival analysis is then carried out between these two groups.

imsig_survival (exp = exp, cli = cli, r = 0.7, time = 'time', status= 'status')

Here, cli is the survival dataframe, time is the columnname of the time to event data and status is the columnname of the event data within the survival dataframe (cli).

Similarly, the hazard ratio's can also be plotted using the following function.

plot_survival (exp = exp, cli = cli, r = 0.7, time = 'time', status= 'status')

Issues

If there are any issues please report it at https://github.com/ajitjohnson/imsig/issues

Owner

  • Name: Ajit Johnson Nirmal
  • Login: ajitjohnson
  • Kind: user
  • Location: Boston, USA
  • Company: Harvard University

Cancer Geneticist | Data Scientist

GitHub Events

Total
  • Issues event: 1
  • Watch event: 2
Last Year
  • Issues event: 1
  • Watch event: 2

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 20
  • Total Committers: 1
  • Avg Commits per committer: 20.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Ajit Johnson Nirmal a****n@g****m 20

Issues and Pull Requests

Last synced: over 2 years ago

All Time
  • Total issues: 18
  • Total pull requests: 0
  • Average time to close issues: about 2 months
  • Average time to close pull requests: N/A
  • Total issue authors: 13
  • Total pull request authors: 0
  • Average comments per issue: 3.33
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • komalsrathi (3)
  • rgalvin516 (2)
  • NiRuff (2)
  • immuneAI (2)
  • AnastasiiaKorosteleva (1)
  • vzsmitj (1)
  • denoqo (1)
  • nadia35 (1)
  • willemdek11 (1)
  • axitamm (1)
  • s7hegde (1)
  • PhyloGrok (1)
  • natlasy (1)
  • zeavin-ferguson (1)
  • eabybee (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • cran 239 last-month
  • Total docker downloads: 21,613
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 3
  • Total maintainers: 1
cran.r-project.org: imsig

Immune Cell Gene Signatures for Profiling the Microenvironment of Solid Tumours

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 239 Last month
  • Docker Downloads: 21,613
Rankings
Forks count: 10.1%
Stargazers count: 11.0%
Dependent packages count: 29.8%
Average: 30.4%
Dependent repos count: 35.5%
Downloads: 65.5%
Maintainers (1)
Last synced: 7 months ago

Dependencies

DESCRIPTION cran
  • HiClimR >= 1.2 imports
  • RColorBrewer >= 1.1 imports
  • ggplot2 >= 2.2 imports
  • gridExtra >= 2.3 imports
  • igraph >= 1.2 imports
  • survival >= 2.4 imports
  • testthat * suggests