The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
Welcome to ImmuneSigR. This package provides a rigorous,
literature-derived database of immune cell markers formatted as Gene
Matrix Transposed (GMT) files, alongside dependency-free rank-based and
mean-expression scoring methods for single-cell RNA sequencing
(scRNA-seq) data.
To ensure rigorous academic provenance, cell subpopulations in
ImmuneSigR are distinguished by appending their source
PubMed IDs (PMIDs) to their names (e.g.,
Plasma cell_PMID_33208946).
You can easily query the detailed metadata and search for specific cell lineages:
library(ImmuneSigR)
# Search for B cell related records
b_cell_records <- Search_ImmuneSigR("B cell", search_by = "Cell_Type", fixed = TRUE)
#> Found 110 matching cell signatures.
head(b_cell_records[, c("cell_name", "Title", "PMID")])
#> cell_name
#> 1 B cell_PMID_33208946
#> 2 Plasma cell_PMID_33208946
#> 24 B cell_PMID_33208946
#> 25 Plasma_PMID_33208946
#> 43 Resting Memory B cells_PMID_39406187
#> 44 Activated B cells_PMID_39406187
#> Title
#> 1 A molecular cell atlas of the human lung from single cell RNA sequencing
#> 2 A molecular cell atlas of the human lung from single cell RNA sequencing
#> 24 A molecular cell atlas of the human lung from single cell RNA sequencing
#> 25 A molecular cell atlas of the human lung from single cell RNA sequencing
#> 43 A pan-cancer single-cell RNA-seq atlas of intratumoral B cells
#> 44 A pan-cancer single-cell RNA-seq atlas of intratumoral B cells
#> PMID
#> 1 33208946
#> 2 33208946
#> 24 33208946
#> 25 33208946
#> 43 39406187
#> 44 39406187
# Retrieve marker genes (filtering for signatures with at least 5 genes)
t_nk_markers <- Get_Markers(c("T cell", "NK cell"), min_genes = 5)
length(t_nk_markers)
#> [1] 187ImmuneSigR provides robust scoring functions that do not
require heavy external dependencies. We can validate this using a
simulated matrix:
# Create a dummy expression matrix for demonstration
demo_genes <- unique(unlist(Get_Markers(c("B cell", "T cell"), min_genes = 5)[1:8]))
demo_genes <- demo_genes[seq_len(min(120, length(demo_genes)))]
set.seed(1)
expr_matrix_dummy <- matrix(
stats::rpois(length(demo_genes) * 12, lambda = 2),
nrow = length(demo_genes),
dimnames = list(demo_genes, paste0("cell_", seq_len(12)))
)
# Calculate Rank Scores (UCell-like)
matrix_rank_scores <- Score_ImmuneSigR(
expr_matrix_dummy,
target_cells = c("B cell", "T cell"),
min_genes = 5,
method = "rank"
)
#> Scoring 62 signatures using rank scoring...
head(matrix_rank_scores)
#> ImmuneSigR_B cell_PMID_33208946_score
#> cell_1 1
#> cell_2 1
#> cell_3 1
#> cell_4 1
#> cell_5 1
#> cell_6 1
#> ImmuneSigR_B cell_PMID_33208946.1_score
#> cell_1 0.6134752
#> cell_2 0.6050271
#> cell_3 0.6125365
#> cell_4 0.5833333
#> cell_5 0.6136838
#> cell_6 0.6740718
#> ImmuneSigR_Activated B cells_PMID_39406187_score
#> cell_1 0.5803844
#> cell_2 0.5024028
#> cell_3 0.5454347
#> cell_4 0.5729576
#> cell_5 0.4130625
#> cell_6 0.5255570
#> ImmuneSigR_Naive B cells_PMID_39406187_score
#> cell_1 0.6231884
#> cell_2 0.5623188
#> cell_3 0.6434783
#> cell_4 0.4149758
#> cell_5 0.4444444
#> cell_6 0.6212560
#> ImmuneSigR_Atypical Memory B cells_PMID_39406187_score
#> cell_1 0.6206897
#> cell_2 0.5966749
#> cell_3 0.5135468
#> cell_4 0.5548030
#> cell_5 0.3325123
#> cell_6 0.3054187
#> ImmuneSigR_B cells/MHC-II_PMID_37316583_score
#> cell_1 0.6698630
#> cell_2 0.4956621
#> cell_3 0.5091324
#> cell_4 0.6392694
#> cell_5 0.5118721
#> cell_6 0.5744292
#> ImmuneSigR_B cells/Stress_PMID_37316583_score
#> cell_1 0.5087440
#> cell_2 0.4875464
#> cell_3 0.6809751
#> cell_4 0.5630631
#> cell_5 0.5437202
#> cell_6 0.6043985
#> ImmuneSigR_B cells/Germinal Center_PMID_37316583_score
#> cell_1 0.4895320
#> cell_2 0.3903941
#> cell_3 0.4913793
#> cell_4 0.3793103
#> cell_5 0.6139163
#> cell_6 0.4094828
#> ImmuneSigR_B cells/Progenitor_PMID_37316583_score
#> cell_1 0.4520744
#> cell_2 0.3948498
#> cell_3 0.6881259
#> cell_4 0.5729614
#> cell_5 0.4849785
#> cell_6 0.4012876
#> ImmuneSigR_B cells/B-cells1_PMID_37316583_score
#> cell_1 0.4034335
#> cell_2 0.4542203
#> cell_3 0.6652361
#> cell_4 0.5572246
#> cell_5 0.4842632
#> cell_6 0.4420601
#> ImmuneSigR_B cell Clusters _Cluster1_PMID_31924475_score
#> cell_1 0.4930100
#> cell_2 0.5812582
#> cell_3 0.5043687
#> cell_4 0.5299257
#> cell_5 0.6301879
#> cell_6 0.5052425
#> ImmuneSigR_B cell Clusters _Cluster2_PMID_31924475_score
#> cell_1 0.5643067
#> cell_2 0.5573942
#> cell_3 0.5303729
#> cell_4 0.5113113
#> cell_5 0.6143695
#> cell_6 0.5261835
#> ImmuneSigR_B cell Clusters _Cluster3_PMID_31924475_score
#> cell_1 0.4324786
#> cell_2 0.4991453
#> cell_3 0.6777778
#> cell_4 0.6316239
#> cell_5 0.6811966
#> cell_6 0.1641026
#> ImmuneSigR_B cell Clusters _Cluster4_PMID_31924475_score
#> cell_1 0.2854701
#> cell_2 0.4991453
#> cell_3 0.6094017
#> cell_4 0.6760684
#> cell_5 0.5384615
#> cell_6 0.2213675
#> ImmuneSigR_B cell Clusters _Cluster6_PMID_31924475_score
#> cell_1 0.4136752
#> cell_2 0.4820513
#> cell_3 0.6470085
#> cell_4 0.4760684
#> cell_5 0.5384615
#> cell_6 0.6367521
#> ImmuneSigR_B cell Clusters _Cluster7_PMID_31924475_score
#> cell_1 0.5213675
#> cell_2 0.6581197
#> cell_3 0.4538462
#> cell_4 0.1974359
#> cell_5 0.4316239
#> cell_6 0.2333333
#> ImmuneSigR_B cells_PMID_31033233_score
#> cell_1 0.4980064
#> cell_2 0.5163477
#> cell_3 0.5267145
#> cell_4 0.7013557
#> cell_5 0.4904306
#> cell_6 0.4649123
#> ImmuneSigR_B cell_PMID_33711272_score
#> cell_1 0.6387435
#> cell_2 0.6167103
#> cell_3 0.6037304
#> cell_4 0.5976222
#> cell_5 0.5811518
#> cell_6 0.5890052
#> ImmuneSigR_B cell_PMID_33861994_score
#> cell_1 0.7004227
#> cell_2 0.6732037
#> cell_3 0.6921386
#> cell_4 0.6791209
#> cell_5 0.6595097
#> cell_6 0.7027895
#> ImmuneSigR_B cell_PMID_34019793_score
#> cell_1 0.4435897
#> cell_2 0.7641026
#> cell_3 0.5059829
#> cell_4 0.3350427
#> cell_5 0.6273504
#> cell_6 0.5905983
#> ImmuneSigR_B Cells_PMID_31980621_score
#> cell_1 0.6466165
#> cell_2 0.6387755
#> cell_3 0.6484425
#> cell_4 0.6526316
#> cell_5 0.6336198
#> cell_6 0.5909774
#> ImmuneSigR_B cells_B0_TNFRSF13B_PMID_37427448_score
#> cell_1 0.6543670
#> cell_2 0.5568720
#> cell_3 0.5201422
#> cell_4 0.6113744
#> cell_5 0.5419770
#> cell_6 0.5267434
#> ImmuneSigR_B cells_B1_S1PR1_PMID_37427448_score
#> cell_1 0.6492554
#> cell_2 0.5840779
#> cell_3 0.6541810
#> cell_4 0.6154639
#> cell_5 0.5726231
#> cell_6 0.5896907
#> ImmuneSigR_B cells_B3_NEIL1_PMID_37427448_score
#> cell_1 0.5932710
#> cell_2 0.4515888
#> cell_3 0.5052336
#> cell_4 0.5325234
#> cell_5 0.6076636
#> cell_6 0.5085981
#> ImmuneSigR_B cells Naive_PMID_34493872_score
#> cell_1 0.4685772
#> cell_2 0.6319759
#> cell_3 0.6025641
#> cell_4 0.5867270
#> cell_5 0.5397185
#> cell_6 0.6671694
#> ImmuneSigR_B cell/BC_GPR183_PMID_34238352_score
#> cell_1 0.6568627
#> cell_2 0.5951245
#> cell_3 0.5180180
#> cell_4 0.6070482
#> cell_5 0.5368309
#> cell_6 0.4798622
#> ImmuneSigR_MBM_sc_bcells_Activated B cells_PMID_35803246_score
#> cell_1 0.7018508
#> cell_2 0.6487372
#> cell_3 0.5921535
#> cell_4 0.6529786
#> cell_5 0.6737035
#> cell_6 0.6707152
#> ImmuneSigR_MBM_sc_bcells_Na鈭毭榲e B cells_PMID_35803246_score
#> cell_1 0.5806410
#> cell_2 0.5405128
#> cell_3 0.6367949
#> cell_4 0.6016667
#> cell_5 0.6566667
#> cell_6 0.6582051
#> ImmuneSigR_B CELL_PMID_30388455_score
#> cell_1 0.5487923
#> cell_2 0.4826087
#> cell_3 0.4603865
#> cell_4 0.3502415
#> cell_5 0.5425121
#> cell_6 0.6367150
#> ImmuneSigR_G1- B cells_PMID_30388456_score
#> cell_1 0.6789921
#> cell_2 0.6537958
#> cell_3 0.5580279
#> cell_4 0.6511780
#> cell_5 0.6460515
#> cell_6 0.6151832
#> ImmuneSigR_B cells_PMID_24138885_score
#> cell_1 0.4980064
#> cell_2 0.5163477
#> cell_3 0.5267145
#> cell_4 0.7013557
#> cell_5 0.4904306
#> cell_6 0.4649123
#> ImmuneSigR_T cell/Exhaustion signature_PMID_38855191_score
#> cell_1 0.6666667
#> cell_2 0.6201717
#> cell_3 0.5672389
#> cell_4 0.5965665
#> cell_5 0.5593705
#> cell_6 0.4134478
#> ImmuneSigR_CD4 T cells/Naive1_PMID_37316583_score
#> cell_1 0.5836910
#> cell_2 0.4062947
#> cell_3 0.5965665
#> cell_4 0.5500715
#> cell_5 0.4971388
#> cell_6 0.6022890
#> ImmuneSigR_CD4 T cells/Naive2_PMID_37316583_score
#> cell_1 0.6030568
#> cell_2 0.4851528
#> cell_3 0.6318777
#> cell_4 0.5602620
#> cell_5 0.4912664
#> cell_6 0.5109170
#> ImmuneSigR_CD8 T cells/Memory/Naive1_PMID_37316583_score
#> cell_1 0.5178571
#> cell_2 0.4285714
#> cell_3 0.5985222
#> cell_4 0.4322660
#> cell_5 0.5104680
#> cell_6 0.5831281
#> ImmuneSigR_CD8 T cells/Unassigned1_PMID_37316583_score
#> cell_1 0.5213675
#> cell_2 0.4111111
#> cell_3 0.3230769
#> cell_4 0.6324786
#> cell_5 0.6017094
#> cell_6 0.5905983
#> ImmuneSigR_CD8 T cells/Naive2_PMID_37316583_score
#> cell_1 0.6380323
#> cell_2 0.4585169
#> cell_3 0.5051395
#> cell_4 0.5040382
#> cell_5 0.6101322
#> cell_6 0.6361968
#> ImmuneSigR_CD8 T cells/Dysfunction_PMID_37316583_score
#> cell_1 0.7008547
#> cell_2 0.4991453
#> cell_3 0.6025641
#> cell_4 0.3794872
#> cell_5 0.5264957
#> cell_6 0.6059829
#> ImmuneSigR_CD8+ T cells/cell state 1_PMID_32385277_score
#> cell_1 0.5026201
#> cell_2 0.6026201
#> cell_3 0.4537118
#> cell_4 0.5742358
#> cell_5 0.6039301
#> cell_6 0.4829694
#> ImmuneSigR_CD8+ T cells/cell state 2_PMID_32385277_score
#> cell_1 0.4919558
#> cell_2 0.6098542
#> cell_3 0.5658622
#> cell_4 0.5482655
#> cell_5 0.6616390
#> cell_6 0.5997989
#> ImmuneSigR_CD8+ T cells/cell state 3_PMID_32385277_score
#> cell_1 0.6015737
#> cell_2 0.4656652
#> cell_3 0.5793991
#> cell_4 0.5157368
#> cell_5 0.6165951
#> cell_6 0.5350501
#> ImmuneSigR_T cell/1_PMID_32822576_score
#> cell_1 0.4671498
#> cell_2 0.6492754
#> cell_3 0.5888889
#> cell_4 0.5927536
#> cell_5 0.5405797
#> cell_6 0.2980676
#> ImmuneSigR_T cell/2_PMID_32822576_score
#> cell_1 0.5972887
#> cell_2 0.4222488
#> cell_3 0.5199362
#> cell_4 0.4685008
#> cell_5 0.3644338
#> cell_6 0.4673046
#> ImmuneSigR_T cell/CD4-C3-CD27_PMID_31588021_score
#> cell_1 0.4162393
#> cell_2 0.4376068
#> cell_3 0.5512821
#> cell_4 0.4905983
#> cell_5 0.5803419
#> cell_6 0.3777778
#> ImmuneSigR_T cell/CD4-C4-CTLA4_PMID_31588021_score
#> cell_1 0.6423767
#> cell_2 0.5339126
#> cell_3 0.4971973
#> cell_4 0.6647982
#> cell_5 0.5355942
#> cell_6 0.3946188
#> ImmuneSigR_T cell/CD4-C6-CCR7_PMID_31588021_score
#> cell_1 0.4454106
#> cell_2 0.5724638
#> cell_3 0.7033816
#> cell_4 0.4777778
#> cell_5 0.6183575
#> cell_6 0.4685990
#> ImmuneSigR_T cell/CD4-C4-CTLA4_PMID_31588021.1_score
#> cell_1 0.7803419
#> cell_2 0.5341880
#> cell_3 0.4333333
#> cell_4 0.4760684
#> cell_5 0.4341880
#> cell_6 0.6059829
#> ImmuneSigR_41BB-Hi CD8+ T cell_PMID_33711272_score
#> cell_1 0.6188198
#> cell_2 0.6379585
#> cell_3 0.6148325
#> cell_4 0.6363636
#> cell_5 0.4059011
#> cell_6 0.3137959
#> ImmuneSigR_41BB-Hi CD8+ T cell_PMID_33711272.1_score
#> cell_1 0.6227074
#> cell_2 0.7056769
#> cell_3 0.6096070
#> cell_4 0.6270742
#> cell_5 0.4650655
#> cell_6 0.3973799
#> ImmuneSigR_41BB-Lo CD8+ T cell_PMID_33711272.1_score
#> cell_1 0.6001431
#> cell_2 0.4434907
#> cell_3 0.2510730
#> cell_4 0.6602289
#> cell_5 0.4821173
#> cell_6 0.5822604
#> ImmuneSigR_CD8, gamma delta t cells_PMID_31980621_score
#> cell_1 0.5240148
#> cell_2 0.5591133
#> cell_3 0.4279557
#> cell_4 0.5566502
#> cell_5 0.5862069
#> cell_6 0.6046798
#> ImmuneSigR_Naive T Cells_PMID_31980621_score
#> cell_1 0.5448430
#> cell_2 0.5257848
#> cell_3 0.5014013
#> cell_4 0.5403587
#> cell_5 0.5599776
#> cell_6 0.5860426
#> ImmuneSigR_T cells_CD4_CCR7_PMID_37427448_score
#> cell_1 0.7229064
#> cell_2 0.4796798
#> cell_3 0.5061576
#> cell_4 0.5116995
#> cell_5 0.4963054
#> cell_6 0.5775862
#> ImmuneSigR_T cells_Treg_FOXP3_PMID_37427448_score
#> cell_1 0.6896552
#> cell_2 0.3903941
#> cell_3 0.6551724
#> cell_4 0.5018473
#> cell_5 0.5412562
#> cell_6 0.4784483
#> ImmuneSigR_KUL3 T cells_Cluster0_PMID_32451460_score
#> cell_1 0.6299517
#> cell_2 0.4574879
#> cell_3 0.5594203
#> cell_4 0.4898551
#> cell_5 0.5797101
#> cell_6 0.5222222
#> ImmuneSigR_KUL3 T cells_Cluster1_PMID_32451460_score
#> cell_1 0.4196581
#> cell_2 0.4726496
#> cell_3 0.3880342
#> cell_4 0.7324786
#> cell_5 0.3811966
#> cell_6 0.4606838
#> ImmuneSigR_KUL3 T cells_Cluster2_PMID_32451460_score
#> cell_1 0.4002723
#> cell_2 0.5479918
#> cell_3 0.7539142
#> cell_4 0.5496937
#> cell_5 0.5534377
#> cell_6 0.4115044
#> ImmuneSigR_KUL3 T cells_Cluster3_PMID_32451460_score
#> cell_1 0.5231884
#> cell_2 0.6144928
#> cell_3 0.6236715
#> cell_4 0.6072464
#> cell_5 0.5439614
#> cell_6 0.5144928
#> ImmuneSigR_KUL3 T cells_Cluster10_PMID_32451460_score
#> cell_1 0.5690821
#> cell_2 0.5096618
#> cell_3 0.6198068
#> cell_4 0.4130435
#> cell_5 0.3739130
#> cell_6 0.4724638
#> ImmuneSigR_MBM_sc_tcells_CD8+ T cells TOX+_PMID_35803246_score
#> cell_1 0.6299261
#> cell_2 0.6693350
#> cell_3 0.5406404
#> cell_4 0.6151478
#> cell_5 0.4267241
#> cell_6 0.2967980
#> ImmuneSigR_MBM_sc_tcells_CD8+ T cells TCF7+_PMID_35803246_score
#> cell_1 0.5178571
#> cell_2 0.3811576
#> cell_3 0.3854680
#> cell_4 0.6065271
#> cell_5 0.5880542
#> cell_6 0.7173645
#> ImmuneSigR_MBM_sc_tcells_CD4+ T cells_PMID_35803246_score
#> cell_1 0.5752976
#> cell_2 0.4601190
#> cell_3 0.5482143
#> cell_4 0.5193452
#> cell_5 0.5627976
#> cell_6 0.6532738ImmuneSigR is designed to integrate seamlessly with
real-world scRNA-seq workflows. Below is an example of applying targeted
Plasma cell signatures to the PBMC 3k dataset.
(Note: The following code chunk is not evaluated during CRAN package building to avoid external data downloads, but you can run it locally in your R console).
library(Seurat)
library(SeuratData)
library(ggplot2)
# 1. Load and process pbmc3k dataset
data("pbmc3k")
pbmc <- UpdateSeuratObject(pbmc3k)
pbmc <- NormalizeData(pbmc) |> FindVariableFeatures() |> ScaleData() |> RunPCA() |> RunUMAP(dims = 1:10)
# 2. Extract expression matrix and define targets
expr_matrix_real <- as.matrix(pbmc[["RNA"]]$data)
real_targets <- c("Plasma cell_PMID_33208946", "Conventional Plasma cells_PMID_39406187")
# 3. Score using precise targets curated from literature
real_scores <- Score_ImmuneSigR(expr_matrix_real, target_cells = real_targets, min_genes = 5, method = "rank")
# 4. Add to metadata and visualize
pbmc <- AddMetaData(pbmc, metadata = real_scores)
score_cols <- colnames(real_scores)
p_umap <- FeaturePlot(pbmc, features = score_cols[1:2], ncol = 2, pt.size = 0.8) &
scale_colour_gradientn(colours = rev(RColorBrewer::brewer.pal(n = 11, name = "RdYlBu")))
# --- Plot Title Optimization (Publication Standard) ---
# Restructure "ImmuneSigR_CellName_PMID_xxxx_score" to "CellName Signature Score\n(PMID: xxxx)"
clean_titles <- gsub("^ImmuneSigR_(.+)_PMID_([0-9]+)_score$", "\\1 Signature Score\n(PMID: \\2)", score_cols[1:2])
p_umap[[1]] <- p_umap[[1]] + ggtitle(clean_titles[1]) + theme(plot.title = element_text(hjust = 0.5, size = 12, face = "bold"))
p_umap[[2]] <- p_umap[[2]] + ggtitle(clean_titles[2]) + theme(plot.title = element_text(hjust = 0.5, size = 12, face = "bold"))
# Display the plot
p_umap
You can effortlessly export the built-in GMT database for external use (e.g., in GSEA) or create your own custom marker sets.
# We use tempdir() here for CRAN compliance.
# In practice, you can replace this with your desired output folder (e.g., getwd()).
out_dir <- tempdir()
# Export built-in GMT
exported_gmt <- Export_ImmuneSigR_GMT(out_dir = out_dir)
#> ImmuneSigR GMT file successfully exported to: C:\Users\梁颖妍\AppData\Local\Temp\RtmpCUSGjf/ImmuneSigR_signatures.gmt
# Create a custom signature GMT
custom_gmt <- Create_Custom_GMT(
marker_list = list(
Custom_T = c("CD3D", "CD3E", "CD8A"),
Custom_B = c("CD19", "MS4A1", "CD79A")
),
file_name = file.path(out_dir, "custom_demo_signatures.gmt")
)
#> Custom GMT file created successfully: C:\Users\梁颖妍\AppData\Local\Temp\RtmpCUSGjf/custom_demo_signatures.gmt
cat("Exported GMT to:", exported_gmt, "\n")
#> Exported GMT to: C:\Users\梁颖妍\AppData\Local\Temp\RtmpCUSGjf/ImmuneSigR_signatures.gmt
cat("Created Custom GMT at:", custom_gmt, "\n")
#> Created Custom GMT at: C:\Users\梁颖妍\AppData\Local\Temp\RtmpCUSGjf/custom_demo_signatures.gmtThese binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.