How to Use MCPcounter for Immune Infiltration Analysis

How to Use MCPcounter for Immune Infiltration Analysis
MCPcounter

Hello everyone, welcome to Xiaoyang’s column! In previous posts, we introduced ssGSEA, which stands for single-sample Gene Set Enrichment Analysis, an extension of the GSEA method designed for situations where GSEA cannot be performed on a single sample. Interested friends can check it out in Xiaoyang’s column. Today, I will introduce a method for quantifying tumor cell immune infiltration based on marker genes—MCPcounter.

1

Basic Concepts

MCPcounter (Microenvironment Cell Populations-counter): It generates absolute abundance scores for 8 immune cell types and 2 stromal cell types (including T cells, CD8+ T cells, cytotoxic lymphocytes, NK cells, B lymphocytes, monocytes, myeloid dendritic cells, neutrophils, as well as endothelial cells and fibroblasts) based on the gene expression matrix. The results of MCPcounter are “single-sample” scores, meaning that the generated results are calculated independently for each sample. Since the scores are expressed in arbitrary units, they cannot be directly interpreted as cell fractions and cannot be compared between cell types. During quantitative validation, the estimated scores show a high correlation with the actual cell fractions, demonstrating the value of MCPcounter for inter-sample comparisons. Currently, MCPcounter has been applied to quantify immune and non-immune cells in over 19,000 samples across 32 non-hematological tumors.

2

Source Literature

The MCPcounter package was developed by the Becht team in 2016, and the article was published in Genome Biology, titled Estimating the population abundance of tissue-infiltrating immune and stromal cell populations using gene expression.

How to Use MCPcounter for Immune Infiltration Analysis

3

Journal Information

How to Use MCPcounter for Immune Infiltration Analysis

4

Algorithm Principle

How to Use MCPcounter for Immune Infiltration Analysis

MCPcounter can predict the abundance of 10 cell types from transcriptome data, including 8 immune cells, endothelial cells, and fibroblasts. The algorithm principle of MCPcounter is similar to ssGSEA.

1. Select a type of transcript label (TM), MCP provides both gene names and probe types;

2. Extract and normalize the labels in the expression matrix;

3. Define and grade the cellular microenvironment (MCP);

4. Consistency check of MCP grouping and unsupervised MCP clustering;

5. Screening and validation of MCP samples and control TM labels;

6. Perform MCPcounter scoring;

7. Validate scoring results (RNA mix samples, immunohistochemistry, correlation).

5

MCPcounter Package Download

This package can quantify the absolute abundance of 8 immune cells and 2 stromal cells in heterogeneous tissues using transcriptome data. To load MCPcounter, you need to first download the MCPcounter package from the following address:

https://github.com/ebecht/MCPcounter

6

Data Requirements

How to Use MCPcounter for Immune Infiltration Analysis

Regular expression matrices, MCPcounter supports three types of gene names: HIGO symbols, Entrez ID, and probe IDs from the affy133P2 platform.

7

Parameter Explanation

How to Use MCPcounter for Immune Infiltration Analysis

1. MCPcounter.estimate(): Call function

2. mRNA_ count: Expression profile data, that is, the mRNA expression matrix to be calculated

3. featuresType: Type of gene name, Affymetrix Human Genome 133 Plus 2.0 probesets use “affy133P2_probesets”, other data can use “HUGO_symbols” and “ENTREZ_ID”

4. The probesets and genes parameters generally do not need to be set and are not listed here.

8

Result Visualization

How to Use MCPcounter for Immune Infiltration Analysis

1. Cell type;

2. Sample name;

3. The MCPcounter score of cells in different samples.

Visualization forms:

How to Use MCPcounter for Immune Infiltration Analysis

1. Sample clustering, as shown in the legend, different colors correspond to different samples;

2. Cell type;

3. MCPcounter score.

9

Code

###### MCPcounter Immune Infiltration Annotation# Load R packagelibrary(MCPcounter)# Use read.table function to read input fileinput <- read.table("data/sample_input.txt",header=T, row.names = 1, check.names=F)# Read probe annotation resultsprobesets <- read.table("data/MCPcounter_probesets.txt",sep="\t",stringsAsFactors=FALSE,colClasses="character")# Read gene name annotation resultsgenes <- read.table("data/MCPcounter_genes.txt",sep="\t",stringsAsFactors=FALSE,header=TRUE,colClasses="character",check.names=FALSE)# Perform MCPcounter analysisMCPcounterScore <- MCPcounter.estimate(input, featuresType = "HUGO_symbols",#featuresType varies according to inputprobesets = probesets,genes = genes)# Use normalize function for normalizationMCPcounterScore <- normalize(MCPcounterScore)# Write results to filewrite.table(MCPcounterScore, file = "data/MCPcounterScore.txt",sep="\t", quote=F, col.names=T)# Construct a data frame with annotation informationannotation_col <- data.frame(colnames(MCPcounterScore))colnames(annotation_col) <- "sample"rownames(annotation_col) <- colnames(MCPcounterScore)# Draw heatmappheatmap(MCPcounterScore,show_colnames = F,cluster_rows = F,cluster_cols = T,annotation_col = annotation_col,#annotation_col annotation placed in columns, cluster_cols = T clustering of columns (samples)cellwidth=15,cellheight=15,fontsize=5,filename = 'figures/MCPcounter-heatmap.tiff')

10

Literature Examples

Now let’s see how authors utilize MCPcounter in the literature!

This is an article published in November 2020 in Genomics (IF= 5.736) titled A pan-cancer analysis of the oncogenic role of staphylococcal nuclease domain-containing protein 1 (SND1) in human tumors.

How to Use MCPcounter for Immune Infiltration Analysis

How to Use MCPcounter for Immune Infiltration Analysis

11

Applications of MCPcounter

How to Use MCPcounter for Immune Infiltration Analysis

As shown in the figure, the article lists the MCPcounter infiltration status of BLCA tumors, HNSC tumors, PRAD tumors, and TGCT tumors. The authors used MCPcounter to explore the potential correlation between the expression level of the SND1 gene and the infiltration level of fibroblasts associated with all types of cancer in TCGA.

12

Summary

  • MCPcounter is an R package that can quantify the absolute abundance of 8 immune cells and 2 stromal cells (including T cells, CD8+ T cells, cytotoxic lymphocytes, NK cells, B lymphocytes, monocytes, myeloid dendritic cells, neutrophils, as well as endothelial cells and fibroblasts) using transcriptome data.

  • It is important to note that transcriptome data must be normalized.

  • The results of MCPcounter are “single-sample” scores, meaning that the results are calculated independently for each sample.

That’s all for this issue regarding MCPcounter. I hope this helps in your research work. If you want to further master the related content of MCPcounter, you can also log in to the Helix Life official website (https://www.helixlife.cn/) for in-depth learning and exploration!

I am Xiaoyang, see you next time~

How to Use MCPcounter for Immune Infiltration Analysis

Xiaoyang’s Full Code Series Gateway
Confused! What’s the difference between GSEA & GSVA? The most comprehensive tutorial is here!
One of the most common R packages for immune infiltration, often found in high-scoring articles!
90% of bioinformatics SCI require immune infiltration analysis, high-scoring SCI loves it! Have you learned it?
Xiaoyang’s Single Image Reproduction Series Gateway (Completed)
1. The most challenging yet useful clinical predictive analysis, the simplest zero-code guide for you! Today, let me tell you all about it!
2. The simple and variable radar chart! Learn it in ten minutes! A skill that will impress your supervisor! Come in to learn!
3. How simple is it to achieve clinical predictive analysis with zero code? Just three minutes…. Teach you a new skill to impress!
4. In five minutes! Teach you how to create CNS-level beautiful charts with zero code! Over 90% of bioinformatics SCI will encounter this!
5. Amazing! With this chart in clinical research, wait to be praised by your supervisor! Eye-catching!
6. Really! I didn’t expect that the most loved beautiful charts of 7+ SCI could be reproduced so easily! If you can’t learn it, I lose!
7. Master these two bioinformatics charts in three minutes, applicable in over 90% of National Natural Science Foundation proposals!
8. So convenient and simple! Various ways to filter molecules! This design will not fail!
9. Bioinformatics novices, don’t panic! A one-stop GEO data mining tutorial is here! You can also do bioinformatics SCI with zero code!
10. Private recipe! Teach you how to calculate PCR in one click! So useful!
11. This is a lifesaver! Zero code to achieve DNA methylation analysis! Tired of transcriptomics, let’s do methylation!
12. In just ten minutes, complete complex clinical predictive models! No need to learn statistics, automatic and brainless chart generation!
13. Has immune infiltration analysis reached such a level now? Zero code can be done in one minute? It’s perfect for beginners!
14. A new idea for survival analysis: Even if they are all KM curves, I will teach you three tricks to turn waste data into treasure!
15. Highly compatible! Advanced interaction network diagrams that everyone from experts to beginners cannot do without, achieved with zero code! Come see the results!
16. Over 80% of SCI cannot bypass this chart! This New Year, I will teach you a trick to make your charts more efficient and beautiful! Praise from the supervisor!
17. Didn’t expect it? Taking the intersection between multiple groups, besides Venn diagrams, there’s also this UpSet! Get a little SCI trick this New Year!
18. Zero code to achieve Sankey diagrams! Teach you to display multi-dimensional data in various ways! Come copy the homework!
19. How to create a sense of sophistication in 6+ SCI charts? You must try this high-value pod chart!
20. Old-fashioned! After I visualized the data with ridge plots, I achieved the high-level feel of high-scoring articles!
21. Don’t ask, just take it! Zero code to achieve GSEA! No more need to resolve GSEA software errors!
22. A lazy person’s high-value chart that anyone can use! High-scoring articles are seen every day! Stop drooling, come learn!
23. An essential table for clinical research! Can you quickly compile a patient information statistics table? A five-minute quick method, come learn!
24. Amazing! How is this ultra-high-frequency experiment calculated in cell experiments? One trick teaches you to solve it in three minutes!
25. One trick teaches you to master the “dimensionality reduction strike” of bioinformatics analysis! Seeing is learning!
26. A high-value enrichment analysis chart is coming! Tired of bubble columns? Teach you to draw circles with zero code!
27. Zero code to achieve differential expression! This database is enough!

Welcome everyone to follow the Helix Life bioinformatics channel – Challenge Circle Linked WeChat account~

How to Use MCPcounter for Immune Infiltration Analysis

END
Written by 丨Xiaoyang
Layout by 丨Sijinxiong
Chief Editor丨Xiaoxueqiu

How to Use MCPcounter for Immune Infiltration Analysis

Leave a Comment