This tutorial presents an outline of the basic series of steps for analyzing a 10x Genomics Gene Expression with Feature Barcoding (antibody) data set in Partek Flow starting with the output of Cell Ranger.
If you have Cell Hashing data, please see our documentation on Hashtag demultiplexing.
This tutorial includes only one sample, but the same steps will be followed when analyzing multiple samples. For notes on a few aspects specific to a multi-sample analysis, please see our Single Cell RNA-Seq Analysis (Multiple Samples) tutorial.
If you are new to Partek Flow, please see Getting Started with Your Partek Flow Hosted Trial for information about data transfer and import and Creating and Analyzing a Project for information about the Partek Flow user interface.
The data set for this tutorial is a demonstration data set from 10x Genomics. The sample includes cells from a dissociated Extranodal Marginal Zone B-Cell Tumor (MALT: Mucosa-Associated Lymphoid Tissue) stained with BioLegend TotalSeq-B antibodies. We are starting with the Feature / cell matrix HDF5 (filtered) produced by Cell Ranger. Prior to beginning, transfer this file to your Partek Flow using the Transfer files button on the homepage.
If you need additional assistance, please visit our support page to submit a help ticket or find phone numbers for regional support.
Let's start by creating a new project.
On the Home page, click New project (Figure 1)
Give the project a name
Click Create project
In the Analyses tab, click Add data
Click 10x Genomics Cell Ranger counts h5 (Figure 2)
Choose the filtered HDF5 file for the MALT sample produced by Cell Ranger
Note that Partek Flow also supports the feature-barcode matrix output (barcodes.tsv, features.tsv, matrix.mtx) from Cell Ranger. The import steps for a feature-barcode matrix are identical to this tutorial.
Click Next
Name the sample MALT (the default is the file name)
Specify the annotation used for the gene expression data (here, we choose Homo sapiens (human) - hg38 and Ensembl Transcripts release 109). If Ensembl 109 is not available from the drop-down list, choose Add annotation and download it.
Check Features with non-zero values across all samples in the Report section
Click Finish (Figure 3)
A Single cell counts data node will be created under the Analyses tab after the file has been imported. We can move on to processing the data.
Move the .h5 file to where Partek Flow is installed using , then browse to its location.
If you need additional assistance, please visit to submit a help ticket or find phone numbers for regional support.
The Single cell counts data node contains two different types of data, mRNA expression and protein expression. So that we can process these two different types of data separately, we will split the data by data type.
Click the Single cell counts data node
Click Pre-analysis tools in the toolbox
Click Split by feature type
A rectangular task node will be created along with two circular data nodes, one for each data type (Figure 1). The labels for these data types are determined by features.csv file used when processing the data with Cell Ranger. Here, our data is labeled Gene Expression, for the mRNA data, and Antibody Capture, for the protein data.
An important step in analyzing single cell RNA-Seq data is to filter out low-quality cells. A few examples of low-quality cells are doublets, cells damaged during cell isolation, or cells with too few counts to be analyzed. In a CITE-Seq experiment, protein aggregation in the antibody staining reagents can cause a cell to have a very high number of counts. These are low-quality cells that can be excluded. Additionally, if all cells in a data set are expected to show a baseline level of expression for one of the antibodies used, it may be appropriate to filter out cells with very low counts or a low number of detected features. You can do this in Partek Flow using the Single cell QA/QC task.
We will start with the protein data.
Click the Antibody Capture data node
Click QA/QC in the toolbox
Click Single Cell QA/QC
This produces a Single-cell QA/QC task node (Figure 2).
Double-click the Single cell QA/QC task node to open the task report
The Single cell QA/QC report opens in a new data viewer session. There are interactive violin plots showing the most commonly used quality metrics for each cell: the total count per cell and the number of detected features per cell (Figure 3). Each point on the plots is a cell and the violins illustrate the distribution of values for the y-axis metric.
For this analysis, we will set a maximum counts threshold to exclude potential protein aggregates and, because we expect every cell to be bound by several antibodies, we will also set a minimum counts threshold.
Select one of the plots on the canvas
In the Select & Filter icon on the left under Tools, set the Counts threshold to keep cells between 500 and 20000 (Figure 4)
Click Apply observation filter...
Select the Antibody Capture data node as input in the pipeline preview (Figure 5)
Click Select
You will see a message telling you a new task has been enqueued.
Click OK to dismiss the message
Click the project name at the top to go back to the Analyses tab
Your browser may warn you that any unsaved changes to the data viewer session will be lost. Ignore this message and proceed to the Analyses tab
A new task, Filter counts, is added to the Analyses tab. This task produces a new Filter counts data node.
Next, we can repeat this process for the Gene Expression data node.
Click the Gene Expression data node
Click the QA/QC section in the toolbox
Click Single Cell QA/QC
This produces a Single-cell QA/QC task node
Double-click the Single cell QA/QC task node to open the task report
The task report lists the number of counts per cell, the number of detected features per cell, the percentage of mitochondrial reads per cell, and the percentage of ribosomal counts per cell in four violin plots (Figure 6). For this analysis, we will set maximum and minimum thresholds for total counts and detected genes to exclude potential doublets and a maximum mitochondrial reads percentage filter to exclude potential dead or dying cells. There is no need to apply a filter based on the percentage of ribosomal counts in this tutorial.
In the Selection card on the right, set the Counts threshold to keep cells between 1500 and 15000
Set the Detected features to keep cells between 400 and 4000
Set the % Mitochondrial counts to keep cells between 0% and 20% (Figure 6)
Click Apply observations filter
Select the Gene Expression data node as input in the pipeline preview
Click Select
Click OK to dismiss the message about the task being enqueued
Click the project name at the top to go back to the Analyses tab
Your browser may warn you that any unsaved changes to the data viewer session will be lost. Ignore this message and proceed to the Analyses tab
A new task, Filter counts, is added to the Analyses tab. This task produces a new Filter counts data node (Figure 7)
After excluding low-quality cells, we can normalize the data.
We will start with the protein data.
Click the Filtered counts data node produced by filtering the Antibody Capture data node
Click Normalization and scaling in the toolbox
Click Normalization
Click Finish to run (Figure 8)
The recommended normalization for protein data includes the following steps: Add 1, Divide by Geometric mean, Add 1, Log base 2. This is a variant of Centered log-ratio (CLR), which was used to normalize antibody capture protein counts data in the paper that introduced CITE-Seq [1] and in subsequent publications on similar assays [2. 3]. CLR normalization includes the following steps: Add 1, Divide by Geometric mean, Add 1, log base e. Normalizing the protein data to base 2 instead of e allows for better integration with gene expression data further downstream. If you would prefer to use CLR, click and drag CLR from the panel on the left to the right. If you do choose to use CLR, we recommend making sure the gene expression data is normalized to the base e, to allow for smoother integration further downstream.
Normalization produces a Normalized counts data node on the Antibody Capture branch of the pipeline.
Next, we can normalize the mRNA data. We will use the recommended normalization method in Partek Flow, which accounts for differences in library size, or the total number of UMI counts, per cell, adds 1 and log2 transforms the data.
Click the Filtered counts data node produced by filtering the Gene Expression data node
Click the Normalization and scaling section in the toolbox
Click Normalization
Click Finish to run (Figure 9)
Normalization produces a Normalized counts data node on the Gene Expression branch of the pipeline (Figure 10).
For quality filtering and normalization, we needed to have the two data types separate as the processing steps were distinct. For downstream analysis, we want to be able to analyze protein and mRNA data together. To bring the two data types back together, we will merge the two normalized counts data nodes.
Click the Normalized counts data node on the Antibody Capture branch of the pipeline
Click Pre-analysis tools in the toolbox
Click Merge matrices
Click Select data node to launch the data node selector
Data nodes that can be merged with the Antibody Capture branch Normalized counts data node are shown in color (Figure 11).
Click the Normalized counts data node on the Gene Expression branch of the pipeline (Figure 11)
Click Select
Click Finish to run the task
The output is a Merged counts data node (Figure 12). This data node will include the normalized counts of our protein and mRNA data. The intersection of cells from the two input data nodes is retained so only cells that passed the quality filter for both protein and mRNA data will be included in the Merged counts data node.
To simplify the appearance of the pipeline, we can group task nodes into a single collapsed task. Here, we will collapse the filtering and normalization steps.
Right-click the Split by feature type task node
Choose Collapse tasks from the pop-up dialog (Figure 13)
Tasks that can be selected for the beginning and end of the collapsed section of the pipeline are highlighted in purple (Figure 14). We have chosen the Split matrix task as the start and we can choose Merge matrices as the end of the collapsed section.
Click the Merge matrices task to choose it as the end of the collapsed section
Name the Collapsed task Data processing
Click Save (Figure 15)
The new collapsed task, Data processing, appears as a single rectangular task node (Figure 16).
To view the tasks in Data processing, we can expand the collapsed task.
Double-click Data processing to expand it or right-click and choose Expand collapsed task
When expanded, the collapsed task is shown as a shaded section of the pipeline with a title bar (Figure 17).
Double-click the Data processing title bar to re-collapse
[1] Stoeckius, M., Hafemeister, C., Stephenson, W., Houck-Loomis, B., Chattopadhyay, P. K., Swerdlow, H., ... & Smibert, P. (2017). Simultaneous epitope and transcriptome measurement in single cells. Nature methods, 14(9), 865.
[2] Stoeckius, M., Zheng, S., Houck-Loomis, B., Hao, S., Yeung, B. Z., Mauck, W. M., ... & Satija, R. (2018). Cell hashing with barcoded antibodies enables multiplexing and doublet detection for single cell genomics. Genome biology, 19(1), 224.
[3] Mimitou, E., Cheng, A., Montalbano, A., Hao, S., Stoeckius, M., Legut, M., ... & Satija, R. (2018). Expanding the CITE-seq tool-kit: Detection of proteins, transcriptomes, clonotypes and CRISPR perturbations with multiplexing, in a single assay. bioRxiv, 466466.
If you need additional assistance, please visit our support page to submit a help ticket or find phone numbers for regional support.
We will now examine the results of our exploratory analysis and use a combination of techniques to classify different subsets of T and B cells in the MALT sample.
Double click the merged UMAP data node
Under Configure on the left, click Style, select the Graph-based cluster node, and color by the Graph-based attribute (Figure 1)
The 3D UMAP plot opens in a new data viewer session (Figure 2). Each point is a different cell and they are clustered based on how similar their expression profiles are across proteins and genes. Because a graph-based clustering task was performed upstream, a biomarker table is also displayed under the plot. This table lists the proteins and genes that are most highly expressed in each graph-based cluster. The graph-based clustering found 11 clusters, so there are 11 columns in the biomarker table.
Click and drag the 2D scatter plot icon from New plot onto the canvas (Figure 2)
Drop the 2D scatter plot to the right of the UMAP plot
Click Merged counts to use as data for the 2D scatter plot (Figure 3)
A 2D scatter plot has been added to the right of the UMAP plot. The points in the 2D scatter plot are the same cells as in the UMAP, but they are positioned along the x- and y-axes according to their expression level for two protein markers: CD3_TotalSeqB and CD4_TotalSeqB, respectively (Figure 4).
In Select & Filter, click Criteria to change the selection mode
Click the blue circle next to the Add rule drop-down menu (Figure 5)
Click Merged counts to change the data source
Choose CD3_TotalSeqB from the drop-down list (Figure 6)
Click and drag the slider on the CD3D_TotalSeqB selection rule to include the CD3 positive cells (Figure 7)
As you move the slider up and down, the corresponding points on both plots will dynamically update. The cells with a high expression for the CD3 protein marker (a marker for T cells) are highlighted and the deselected points are dimmed (Figure 8).
Click Merged counts in Get data on the left under Setup
Click and drag CD8a_TotalSeqB onto the 2D scatter plot (Figure 9)
Drop CD8_TotalSeqB onto the x-axis configuration option
The CD3 positive cells are still selected, but now you can see how they separate into CD4 and CD8 positive populations (Figure 10).
The simplest way to classifying cell types is to look for the expression of key marker genes or proteins. This approach is more effective with CITE-Seq data than with gene expression data alone as the protein expression data has a better dynamic range and is less sparse. Additionally, many cell types have expected cell surface marker profiles established using other technologies such as flow cytometry or CyTOF. Let's compare the resolution power of the CD4 and CD8A gene expression markers compared to their protein counterparts.
Click the duplicate plot icon above the 2D scatter plot (Figure 11)
Click Merged counts in the Get Data icon under Setup
Search for the CD4 gene
Click and drag CD4 onto the duplicated 2D scatter plot
Drop the CD4 gene onto the y-axis option
Search for the CD8A gene
Click and drag CD8A onto the duplicated 2D scatter plot
Drop the CD8A gene onto the x-axis option
The second 2D scatter plot has the CD8A and CD4 mRNA markers on the x- and y-axis, respectively (Figure 12). The protein expression data has a better dynamic range than the gene expression data, making it easier to identify sub-populations.
Manually select the cells with high expression of the CD4_TotalSeqB protein marker (Figure 13)
More than 2000 cells show positive expression for the CD4 cell surface protein.
Let's perform the same test on the gene expression data.
Click on a blank spot on the plot to clear the selection
Manually select the cells with high expression of the CD4 gene marker (Figure 14)
This time, only 500 cells show positive expression for the CD4 marker gene. This means that the protein data is less sparse (i.e. there fewer zero counts), which further helps to reliably detect sub-populations.
Based on the exploratory analysis above, most of the CD3 positive cells are in the group of cells in the right side of the UMAP plot. This is likely to be a group of T cells. We will now examine this group in more detail to identify T cell sub-populations.
Draw a lasso around the group of putative T cells (Figure 15)
Click and drag the plot to rotate it around
This group of putative T cells predominantly consists of cells assigned to graph-based clusters 3, 4, and 6, indicated by the colors. Examining the biomarker table for these clusters can help us infer different types of T cell.
Click and drag the bar between the UMAP plot and the biomarker table to resize the biomarker table to see more of it (Figure 17)
Cluster 6 has several interesting biomarkers. The top biomarker is CXCL13, a gene expressed by follicular B helper T cells (Tfh cells). Another biomarker is the PD-1 protein, which is expressed in Tfh cells. This protein promotes self-tolerance and is a target for immunotherapy drugs. The TIGIT protein is also expressed in cluster 6 and is another immunotherapy drug target that promotes self-tolerance.
Cluster 4 expresses several marker genes associated with cytotoxicity (e.g. NKG7 and GZMA) and both CD3 and CD8 proteins. Thus, these are likely to be cytotoxic cells.
We can visually confirm these expression patterns and assess the specificity of these markers by coloring the cells on the UMAP plot based on their expression of these markers.
Click the duplicate plot icon above the UMAP plot
We will color the cells on the duplicate by their expression of marker genes, while keeping the original plot colored by graph-based cluster assignment.
Click and drag the CXCL13 gene from the biomarker table onto the duplicate UMAP plot
Drop the CXCL13 gene onto the Green (feature) option (Figure 18)
Click and drag the NKG7 gene from the biomarker table onto the duplicate UMAP plot
Drop the NKG7 gene onto the Red (feature) option
The cells with higher CXCL13 and NKG7 expression are now colored green and red, respectively. By looking at the two UMAP plots side by side, you can see these two marker genes are localized in graph-based clusters 6 and 4, respectively (Figure 19).
Click the blue circle next to the Add criteria drop-down list
Search for Graph to search for a data source
Select Graph-based clustering (derived from the Merged counts > PCA data nodes)
Click the Add criteria drop-down list and choose Graph-based to add a selection rule (Figure 20)
In the Graph-based filtering rule, click All to deselect all cells
Click cluster 6 to select all cells in cluster 6
Using the Classify tool, click Classify selection
Label the cells as Tfh cells (Figure 21)
Click Save
Click cluster 4 to select all cells in cluster 4
In the Classify icon, click Classify selection
Label the cells as Cytotoxic cells
Click Save
We can classify the remaining cells as helper T cells, as they predominantly express the CD4 protein marker.
Click on the invert selection icon in either of the UMAP plots (Figure 22)
In Classify, click Classify selection
Label the cells as Helper T cells
Click Save
Let's look at our progress so far, before we classify subsets of B-cells.
Click the Clear filters link in Select & Filter
Select the duplicate UMAP plot (with the cell colored by marker genes)
Under Configure on the left, open Style and color the cells by New classifications (Figure 23)
In addition to T-cells, we would expect to see B lymphocytes, at least some of which are malignant, in a MALT tumor sample. We can color the plot by expression of a B cell marker to locate these cells on the UMAP plot.
In the Get data icon on the left, click Merged counts
Scroll down or use the search bar to find the CD19_TotalSeqB protein marker
Click and drag the CD19_TotalSeqB marker over to the UMAP plot on the right
Drop the CD19_TotalSeqB marker over the Color configuration option on the plot
The cells in the UMAP plot are now colored from grey to blue according to their expression level for the CD19 protein marker (Figure 24). The CD19 positive cells correspond to several graph-based clusters. We can filter to these cells to examine them more closely,
Lasso around the CD19 positive cells (Figure 25)
The plots will rescale to include the selected points. The CD19 positive cells include cells from graph-based clusters 1, 2 and 7 (Figure 26).
Find the CD3_TotalSeqB protein marker in the biomarker table
Click and drag the CD3_TotalSeqB onto the UMAP plot on the right
Drop the CD3_TotalSeqB protein marker onto the Color configuration option on the plot (Figure 27)
While these cells express T cell markers, they also group closely with other putative B cells and express B cell markers (CD19). Therefore, these cells are likely to be doublets.
Select either of the UMAP plots
Click on the Select & Filter
Find the CD3_TotalSeqB protein marker in the biomarker table
Click and drag CD3_TotalSeqB onto the Add criteria drop-down list in Select & Filter (Figure 28)
Set the minimum threshold to 3 in the CD3_TotalSeqB selection (Figure 29)
Click the Classify icon then click Classify selection
Label the cells as Doublets
Click Save
The biomarkers for clusters 1 and 2 also show an interesting pattern. Cluster 1 lists IGHD as its top biomarker, while cluster 2 lists IGHA1 as the fourth most significant. Both IGHD (Immunoglobulin Heavy Constant Delta) and IGHA1 (Immunoglobulin Heavy Constant Alpha 1) encode classes of the immunoglobulin heavy chain constant region. IGHD is part of IgD, which is expressed by mature B cells, and IGHA1 is part of IgA1, which is expressed by activated B cells. We can color the plot by both of these genes to visualize their expression.
Click, drag and drop IGHD from the biomarker table onto the Green (feature) configuration option on the UMAP plot on the right
Click, drag and drop IGHA1 from the biomarker table onto the Red (feature) configuration option on the UMAP plot on the right (Figure 30)
We can use the lasso tool to select and classify these populations.
Lasso around the IGHD positive cells (Figure 31)
In the Classify icon on the left, click Classify selection
Label the cells as Mature B cells
Click Save
Lasso around the IGHA1 positive cells (Figure 32)
In the Classify icon on the left, click Classify selection
Label the cells as Activated B cells
Click Save
We can now visualize our classifications.
Click the Clear filters link in the Select & Filter icon on the left
Select the duplicate UMAP plot (with the cell colored by marker genes)
Under Configure on the left, click the Style icon and color the cells by New classifications (Figure 33)
Click Apply classifications in the Classify icon
Name the attribute Cell type
Click Run
Click OK to close the message about a classification task being enqueued
Next, we will filter out certain cells and re-split the data. Re-splitting the data can be useful if you want to perform differential analysis and downstream analysis separately for proteins and genes. For your own analyses, re-splitting the data is optional. You could just as well continue with differential analysis with the merged data if you prefer.
Because we have classified our cells, we can now filter based on those classifications. This can be used to focus on a single cell type for re-clustering and sub-classification or to exclude cells that are not of interest for downstream analysis.
Click the Merged counts data node
Click Filtering
Click Filter cells
Set to exclude Cell type is Doublets using the drop-down menus
Click OR
Set the second filter to exclude Cell type is N/A using the drop-down menus
Click Finish to apply the filter (Figure 1)
This produces a Filtered counts data node (Figure 2).
Click the Filtered counts data node
Click Pre-analysis tools
Click Split by feature type
This will produce two data nodes, one for each data type (Figure 3). The split data nodes will both retain cell classification information.
Once we have classified our cells, we can use this information to perform comparisons between cell types or between experimental groups for a cell type. In this project, we only have a single sample, so we will compare cell types.
Click the Antibody Capture data node
Click Statistics
Click Differential analysis
Click ANOVA then click Next
The first step is to choose which attributes we want to consider in the statistical test.
Click Cell type
Click Add factor
Click Next
Next, we will set up the comparison we want to make. Here, we will compare the Activated and Mature B cells.
Drag Activated B cells in the top panel
Drag Mature B cells in the bottom panel
Click Add comparison
The comparison should appear in the table as Activated B cells vs. Mature B cells.
Click Finish to run the statistical test (Figure 4)
The ANOVA task produces an ANOVA data node.
Double-click the ANOVA data node to open the task report
The report lists each feature tested, giving p-value, false discovery rate adjusted p-value (FDR step up), and fold change values for each comparison (Figure 5).
In addition to the listed information, we can access dot and violin plots for each gene or protein from this table.
This opens a dot plot in a new data viewer session, showing CD45A expression for cells in each of the classifications (Figure 6). First, we exclude Doublets and N/A cells from the plot:
Open Select and filter, select Criteria
Drag "Cell type" from the legend title to the Add criteria box
Uncheck Doublets and N/A
Click to include selected points
We can use the Configuration panel on the left to edit this plot.
Open the Style icon
Switch on Violins under Summary
Switch on Overlay under Summary
Switch on Colored under Summary
Select the Graph-based clustering node in the Color by section
Color by Graph-based clusters under Color and use the slider to decrease the Opacity
Open the Axes icon
Select the Graph-based clustering node in the X axis section
Change the X axis data to Graph-based clusters
Use the slider to increase the Jitter on the X axis (Figure 7)
Click the project name to return to the Analyses tab
To visualize all of the proteins at the same time, we can make a hierarchical clustering heat map.
Click the ANOVA data node
Click Exploratory analysis in the toolbox
Click Hierarchical clustering/heatmap
In the Cell order section, choose Graph-based clusters from the Assign order drop-down list
Click Finish to run with the other default settings
Double-click the Hierarchical clustering task node to open the heatmap
The heatmap can easily be customized using the tools on the left.
Open the Axes icon
Switch off Show Row labels
Increase the Font to 16 (Figure 8)
Activate the Transpose switch which will switch the Row and Column labels, so now the Row labels will be shown (Figure 9)
Open the Dendrograms icon
Choose Row color By cluster and change Row clusters to 4
Change Row dendrogram size to 80 (Figure 10)
In the Heatmap icon
Navigate to Range under Color
Set the Min and Max to -1.2 and 1.2, respectively
Change the Shape to Circle (Figure 11)
Switch the Shape back to Rectangle
Change the Color Palette by clicking on the color squares and selecting colors from the rainbow. Click outside of the selection box to exit this selection. The color options can be dragged alone the Palette to highlight value differences (Figure 12).
Feel free to explore the other tool options on the left to customize the plot further.
We can use a similar approach to analyze the gene expression data.
Click the project name to return to the Analyses tab
Click the Gene Expression data node
Click the Antibody Capture data node
Click Statistics
Click Differential analysis
Click ANOVA then click Next
Click Cell type
Click Add factor
Click Next
Drag Activated B cells in the top panel
Drag Mature B cells in the bottom panel
Click Add comparison
The comparison should appear in the table as Activated B cells vs. Mature B cells.
Click Finish to run the statistical test
As before, this will generate an ANOVA task node and n ANOVA data node.
Double-click the ANOVA task node to open the task report (Figure 13)
Because more than 20,000 genes have been analyzed, it is useful to use a volcano plot to get an idea about the overall changes.
The Volcano plot opens in a new data viewer session, in a new tab in the web browser. It shows each gene as a point with cutoff lines set for P-value (y-axis) and fold-change (x-axis). By default, the P-value cutoff is set to 0.05 and the fold-change cutoff is set at |2| (Figure 14).
Click the ANOVA report tab in your web browser to return to the full report
We can filter the full set of genes to include only the significantly different genes using the filter panel on the left.
Click FDR step up
Type 0.05 for the cutoff and press Enter on your keyboard
Click Fold change
Set to From -2 to 2 and press Enter on your keyboard
The number at the top of the filter will update to show the number of included genes (Figure 15).
A task, Differential analysis filter, will run and generate a new Filtered Feature list data node. We can get a better idea about the biology underlying these gene expression changes using gene set or pathway enrichment. Note, you need to have the Pathway toolkit enabled to perform the next steps.
Click the Filtered feature list data node
Click Biological interpretation in the toolbox
Click Pathway enrichment
Make sure that Homo sapiens is selected in the Species drop-down menu
Click Finish to run
Double-click the Pathway enrichment task node to open the task report
The pathway enrichment results list KEGG pathways, giving an enrichment score and p-value for each (Figure 16).
To get a better idea about the changes in each enriched pathway, we can view an interactive KEGG pathway map.
Click path:hsa05202 in the Transcriptional misregulation in cancer row
The KEGG pathway map shows up-regulated genes from the input list in red and down-regulated genes from the input list in green (Figure 17).
Next, we will perform some exploratory analysis on the merged mRNA and protein expression data and visualize the data in preparation to identify cell populations. Because the merged count matrix has thousands of features, it is a good idea to reduce the dimensionality of the data for more efficient downstream processing.
Click the Merged counts data node
Click Exploratory analysis in the toolbox
Click PCA
Click Finish to run the PCA with default settings (Figure 1)
A PCA task node will be added to the pipeline under the Analyses tab and a circular PCA output data node will be produced (Figure 2).
Once the task completes, we will inspect the results to decide the optimal number of principal components (PCs) to use in downstream analyses. To do this, we will use a Scree plot.
Double click the PCA data node to open the task report
The PCA plot will open in a new data viewer session. A 3D scatterplot will be displayed on the canvas (Figure 3).
Click and drag the Scree plot from New plot under Setup on the left onto the canvas
Drop it over the Replace option (Figure 4)
Select PCA as data for the new Scree plot (Figure 5)
The Scree plot (Figure 6) shows the eigenvalues on the y-axis for each of the 100 PCs on the x-axis. The higher the eigenvalue, the more variance explained by each PC. Typically, after an initial set of highly informative PCs, the amount of variance explained by analyzing additional components is minimal. By identifying the point where the Scree plot levels off, you can choose an optimal number of PCs to use in downstream analysis steps like graph-based clustering and UMAP.
Click and drag over the first set of PCs to zoom in (Figure 7)
Mouse over the Scree plot to identify the point where additional PCs offer little additional information (Figure 8)
In this data set, a reasonable cut-off could be set anywhere between around 10 and 30 PCs. We will use 15 in downstream steps.
We can use Graph-based clustering to group similar cells together in an unsupervised manner.
Click the project name near the top to go back to the Analyses tab
Click the circular PCA data node
Click Exploratory analysis in the toolbox
Click Graph-based clustering
Click to Compute biomarkers
Set the number of principal components to 15 (Figure 9)
Click Configure under Advanced options and change the Resolution to 1.0
Click Finish to run the task
A Graph-based clustering task node will be added to the pipeline under the Analyses tab and a circular Graph-based clusters output data node will be produced (Figure 10)
Once the graph-based clustering task has completed, we can visualize the results with a UMAP plot. You could use the same steps here to generate a t-SNE plot. For this tutorial, we will use UMAP, as it is faster on several thousand cells.
Click the circular PCA data node
Click Exploratory analysis in the toolbox
Click UMAP
Set the number of principal components to 15 (Figure 11)
Click Finish to run the task
A UMAP task node will be added to the pipeline under the Analyses tab and a circular UMAP output data node will be produced (Figure 12)
In this tutorial, we have performed exploratory analysis on merged protein and gene expression data, and we will perform classification on the merged data in the next step.
It can be interesting to perform exploratory analysis on the two feature types separately. For example, you might be interested to see how the clustering of the same cells differs between protein expression profiles vs. gene expression profiles.
To perform exploratory analysis on the two feature types separately, select the Merged counts data node, click Pre-analysis tools, followed by Split by feature type from the toolbox. A new task, Split by feature type, will be added to the pipeline resulting in two output data nodes: Antibody capture (protein data) and Gene expression (mRNA data). Both contain the same high-quality cells.
Performing exploratory analysis with gene expression data is the same as for the merged counts. Because there are a large number of genes, you will need to reduce the dimensionality with PCA, choose an optimal number of PCs and perform downstream clustering and visualization (e.g. graph-based clustering and UMAP/t-SNE). Performing exploratory analysis with protein data is different. There is no need to reduce the dimensionality as there are only a handful of features (17 proteins in this case), so you can proceed straight to downstream clustering and visualization. Figure 13 shows an example of how the pipeline might look if the data is split and analyzed separately.
You can then use the Data viewer to bring together multiple plots for comparison (Figure 14).
Click under Filter on the right
Click under Filter on the right
Click the button
Click the button
To re-collapse the task, you can double click the title bar or click the icon in the title bar. To remove the collapsed task, you can click the . Please note that this will not remove tasks, just the grouping.
On the first 2D scatter plot (with protein markers), click in the top right corner
Click in the top right of the plot to switch back to pointer mode
On the second 2D scatter plot (with mRNA markers), click in the top right corner
Click in the top right corner of both 2D scatter plots, to remove them from the canvas
Click in the top right corner of the 3D UMAP plot
Click in the Select & Filter tool to include the selected points
Click in the top right of the plot to switch back to pointer mode
Add the Biomarkers table using the Table option in the New plot menu, you can drag and reposition the table using the button in the top left corner of the plot .
If you need to create more space on the canvas, hide the panel words on the left using the arrow .
In Select & Filter, click to remove the CD3_TotalSeqB filtering rule
Click in Select & Filter to exclude the cluster 6/Tfh cells
Click in Select & Filter to exclude the cluster 4/Cytotoxic cells
Click in the top right corner of the UMAP plot
Click in Select & Filter to include the selected points
Click in Select & Filter to exclude the selected points
Click in the top right corner of the UMAP plot
Optionally, you may wish to save this data viewer session if you need to go back and reclassify cells later. To save the session, click the icon on the left and name the session.
If you need additional assistance, please visit to submit a help ticket or find phone numbers for regional support.
Click in the CD45RA_TotalSeqB row
Click in the top right corner of the table to open a volcano plot
The plot can be configured using various tools on the left. For example, the Style icon can be used to change the appearance of the points. The X and Y-axes can be changed in the Axes icon. The Statistics icon can be used to set different Fold-change and P-value thresholds for coloring up/down-regulated genes. The in plot controls can be used to transpose the volcano plot (Figure 14).
Click to create a new data node including only these significantly different genes
If you need additional assistance, please visit to submit a help ticket or find phone numbers for regional support.
If you need additional assistance, please visit to submit a help ticket or find phone numbers for regional support.