Method Article

R, Seurat en CellChat gebruiken om een single-cell transcriptomics-dataset van wondgenezing van de huid van muizen te analyseren

DOI:

10.3791/67266

August 1st, 2025

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Hier presenteren we een stapsgewijze, visuele workflow voor het analyseren van een single-cell time-course transcriptomics-dataset van wondgenezing van de huid van muizen met behulp van R. Het protocol bevat een standaardpijplijn voor het downloaden van gegevenssets, kwaliteitscontrole, visualisaties en annotaties van celtypen met behulp van Seurat, en analyse van cel-celinteractie met behulp van CellChat.

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Het proces van wondgenezing wordt gereguleerd door complexe interacties tussen verschillende celtypen in ruimte en tijd. Door de profilering van individuele cellen binnen hun complexe omgeving, maken single-cell transcriptomics-methoden het mogelijk om cellulaire heterogeniteit, celcommunicatienetwerken en cel-celinteracties die betrokken zijn bij het wondgenezingsproces te onderzoeken. Veel analysetools voor één cel worden echter uitgevoerd in een computercoderingsomgeving en hun meer wijdverbreide gebruik door wetenschappers op het gebied van wondgenezing wordt gedwarsboomd door het schijnbare gebrek aan expertise op het gebied van bio-informatica. Daarom wordt een stapsgewijze workflow gepresenteerd die laat zien hoe een grafische coderingsomgeving met de naam RStudio kan worden gebruikt om een eenvoudige eencellige analyse uit te voeren van een tijdelijke dataset voor excisie van de huid van muizen. Dit visuele en begeleide protocol stelt wetenschappers zonder bio-informatica-achtergrond in staat om een eerder gepubliceerde dataset voor wondgenezing te downloaden, kritieke kwaliteitscontrolestappen uit te voeren, een standaard workflow voor analyse van één cel uit te voeren, inclusief visualisaties van datasets en annotaties van celtypen met behulp van Seurat, celsubtype-analyses uit te voeren, modulescoreanalyses uit te voeren, cel-celinteractieanalyses uit te voeren met behulp van CellChat en integratieve analyses van meerdere datasets uit te voeren met Seurat. Er wordt een verhalende uitleg gegeven voor elke stap in het protocol en grafische resultaten van elke regel code worden gepresenteerd om de gebruiker veilig door de workflow te leiden. Het doel van deze visuele inleiding tot een pijplijn voor analyse van één cel is om meer wetenschappers op het gebied van wondgenezing in staat te stellen bio-informaticatools rechtstreeks in hun eigen laboratoria te gebruiken om diepere analyses van hun eigen eencellige datasets mogelijk te maken, evenals meer wijdverspreide heranalyses van eerder gepubliceerde eencellige datasets.

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Wondgenezing is een van de meest complexe processen in de biologie van zoogdieren en omvat een spectrum van drie fasen van genezing: inflammatoire, proliferatieve en resolutie 1,2. Deze fasen van genezing classificeren in grote lijnen de gecoördineerde acties van tientallen celtypen en honderden van hun moleculaire producten in de ruimte en tijd van wondherstel3. Verschillende decennia van histologische en moleculaire studies op basis van bemonstering van wondweefsel gedurende het verloop van genezing hebben de overkoepelende cellulaire patronen van weefselherstel opgehelderd3, met name in reproduceerbare muismodellen van excisionele huidwondgenezing 4,5,6. Pas in de laatste twee decennia is het mogelijk geworden om de complexiteit van wondgenezing beter te waarderen, te beginnen met de komst van high-throughput transcriptomische analyses van wonden op de schaal van bulkweefsels 7,8,9 en cellen 10,11,12,13,14. Meest recentelijk hebben verschillende onderzoeken transcriptioneel geprofileerde huidwonden op eencellig niveau uitgevoerd, waarbij nieuwe subtypes van wondcellen zijn geïdentificeerd en is aangetoond hoe ze tijdens genezing met elkaar kunnen interageren 15,16,17,18,19,20. Hu et al. gebruikte een innovatieve ruimtelijke eencellige RNA-sequencingbenadering om huidwonden te profileren gedurende het verloop van genezing op verschillende radiale afstanden van het wondcentrum, wat nieuwe intercellulaire en moleculaire 'bewegingen' door ruimte en tijd onthulde20. Dergelijke studies ontrafelen de complexiteit van wondgenezing in ongekend detail en beginnen een beeld te schetsen van een enorme cellulaire en moleculaire heterogeniteit.

Belangrijke recente ontwikkelingen in bio-informatica-analysemethoden maken het mogelijk om de complexe multi-omische datasets die worden gegenereerd op het gebied van wondgenezingsonderzoek biologisch te begrijpen. Analysepakketten voor één cel zoals Seurat bieden hulpmiddelen voor robuuste analyse en integratie van datasets, inclusief de classificatie van celtypen in complexe weefsels zoals wonden21. Voor de stroomafwaartse interpretatie van gegevens van één cel worden tools zoals CellChat gebruikt om vermeende cel-celinteractieprogramma's te identificeren die kunnen verklaren hoe cellen coördineren om wonden te herstellen22. Hoewel deze tools goed gedocumenteerd en goed geciteerd zijn, moeten ze worden uitgevoerd in een computercoderingsomgeving zoals R, een statistische en grafische programmeertaal die het meest wordt gebruikt op het gebied van bio-informatica van genomics en transcriptomics. Terwijl biologen en clinici op het gebied van wondgenezing steeds vaker eencellige benaderingen gebruiken om weefselherstel te bestuderen, hebben maar weinigen de bio-informaticatraining die nodig is om tools zoals Seurat en CellChat rechtstreeks in hun eigen laboratoria te gebruiken. Een dergelijke barrière in het gebruik van deze bio-informaticatools weerhoudt wetenschappers er niet alleen van om hun eigen datasets dieper te analyseren zonder de hulp van bio-informatici, maar het verhindert ook dat wetenschappers de rijkdom aan eencellige gegevens die al door andere groepen zijn gepubliceerd, op betrouwbare wijze opnieuw analyseren.

Daarom wordt hier een stapsgewijze workflow gepresenteerd om wetenschappers zonder bio-informatica-achtergrond in staat te stellen een eerder gepubliceerde en openbaar beschikbare eencellige dataset voor wondgenezing te analyseren20. Het protocol maakt gebruik van de gangbare en vrije grafische R-coderingsomgeving genaamd RStudio, en laat zien hoe door deze omgeving kan worden genavigeerd om voorgeschreven coderegels uit te voeren die een basisanalyse van een complexe single-cell dataset mogelijk maken met behulp van Seurat en CellChat. Binnen dit protocol worden de zeven belangrijkste methoden gepresenteerd die relevant zijn voor onderzoek naar wondgenezing, waaronder: 1) installatie van de coderingsomgeving, 2) downloaden van de dataset en kritieke kwaliteitscontrolestappen, 3) workflows voor analyse van één cel, inclusief visualisaties en annotaties van celtypen, 4) analyses van celsubtypen, 5) scoreanalyses van modules, 6) analyses van cel-celinteractie, en 7) integratieve analyses van meerdere datasets. Binnen elke methode wordt de werkelijke code verstrekt die de gebruiker zij aan zij met het protocol kan uitvoeren, en worden de werkelijke grafische resultaten van elke regel code getoond om de gebruiker door de workflow te leiden. Het primaire doel van deze begeleide en visuele inleiding tot RStudio en een fundamentele workflow voor analyse van één cel is om meer wondgenezingswetenschappers in staat te stellen deze krachtige tools rechtstreeks te gebruiken om snellere vooruitgang op het gebied van onderzoek mogelijk te maken.

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

NOTITIE: In de volgende workflows waarin zeven bio-informaticamethoden worden beschreven, gaan alle stappen van de protocollen vergezeld van hun respectievelijke codeblokken die rechtstreeks op de eigen RStudio-interface van de gebruiker moeten worden uitgevoerd in de volgorde waarin ze worden vermeld. Om dit protocol zo gebruiksvriendelijk mogelijk te maken, is een R-scriptbestand opgenomen (Aanvullend Bestand 1: JoVE_Rscript.R), dat rechtstreeks in de RStudio-sessie van de gebruiker kan worden geladen, zodat elke regel code gewoon kan worden uitgevoerd. Dit voorkomt dat de gebruiker de code uit het protocoldocument moet typen of kopiëren en plakken, wat fouten zou kunnen veroorzaken. Alle protocolinstructies zijn ook opgenomen in het R-scriptbestand in de vorm van opmerkingen, aangegeven door een hashtag '#'-symbool aan het begin van elke commentaarregel.

1. R, RStudio en de vereiste R-pakketten installeren voor de workflow voor analyse van één cel

  1. Download en installeer R (versie 4.4.1) op de computer. Gebruik de link die overeenkomt met het besturingssysteem van de computer.
    1. Als u een computer met Microsoft Windows gebruikt, gebruikt u deze koppeling: https://cran.rstudio.com/bin/windows/base/
    2. Als u een computer met MacOS gebruikt, gebruik dan deze link: https://cran.rstudio.com/bin/macosx/
  2. Installeer de nieuwste versie van RStudio op de computer. Klik op de volgende link en volg de instructies:
    https://www.rstudio.com/products/rstudio/download/#download
  3. Installeer de Rtools (versie 4.4), waarmee R bepaalde pakketten kan compileren. Klik op de volgende link en volg de instructies:
    1. Als u Windows gebruikt, gebruik dan deze link: https://cran.rstudio.com/bin/windows/Rtools/
    2. Als u MacOS gebruikt, gebruik dan deze link:
      https://mac.r-project.org/tools/
  4. Stel de lokale werkmap in; Dit is de map op de computer waar alle bestanden worden geladen en in worden opgeslagen. Stel de werkmap in door Sessie te selecteren in de menubalk van RStudio en te klikken op Werkmap instellen > Map kiezen en de gewenste map te selecteren.
    1. Als u een Windows-computer gebruikt, gebruikt u de volgende opdracht om de werkmap in te stellen. Verander [Directory] in de volgende regel code in de werkelijke mappenstructuur. Houd er rekening mee dat het mapscheidingsteken in R het teken "/" is
      setwd("C:/[Directory]")
    2. Als u een MacOS-computer gebruikt, stelt het volgende commando ook de werkmap in. Verander [Directory] in de volgende regel code in de werkelijke mappenstructuur. Houd er rekening mee dat het mapscheidingsteken in R het teken "/" is
      setwd("~/[Directory]")
    3. Controleer op elk moment tijdens een R-sessie de werkmap met behulp van de volgende regel code:
      getwd()
    4. Verken in RStudio visueel de werkende mappenstructuur, inclusief alle bestanden en mappen die daarin zijn opgenomen, in het rechtervenster op het tabblad Bestanden . Om in de bestandsverkenner van RStudio naar de werkmap te navigeren, klikt u op het tandwielpictogram -> Ga naar werkmap.
  5. Installeer de volgende pakketten uit de RAN van de R-pakketrepository, die noodzakelijke afhankelijkheden zijn voor het protocol. Voer de volgende opdrachten uit om deze pakketten te installeren.
    install.packages("devtools")
    install.packages("readxl")
    install.packages("openxlsx")
    install.packages("tidyverse")
    install.packages("scCustomize")

    NOTITIE: Tijdens de installatie van R-pakketten is het normaal dat er verschillende vensters verschijnen en verdwijnen. Als er een venster verschijnt waarin wordt gevraagd om een pakket samen te stellen, klikt u op JA. Als er een venster verschijnt waarin wordt gevraagd om R opnieuw op te starten voordat het pakket wordt geïnstalleerd, klikt u op NEE.
  6. Installeer de volgende pakketten uit de gecureerde R-pakketrepository Bioconductor
    (https://bioconductor.org/), die noodzakelijke afhankelijkheden zijn voor het protocol. Voer de volgende opdrachten uit om deze pakketten te installeren.
    if (! requireNamespace("BiocManager", quietly = TRUE) )
      install.packages("BiocManager")
    BiocManager::install("NMF", update=F)
    BiocManager::install("ComplexHeatmap", update=F)
    BiocManager::install("BiocNeighbors", update=F)
    BiocManager::install("SingleCellExperiment", update=F)
    BiocManager::install("circlize", update=F)
    BiocManager::install("edgeR", update=F)
    BiocManager::install("scDblFinder", update=F)
  7. Installeer de volgende pakketten, die nodig zijn voor de workflow die in dit manuscript wordt beschreven.
    install.packages("Seurat")
    devtools::install_github("jinworks/CellChat")
  8. Laad elk pakket in om te bevestigen dat de installaties zijn geslaagd. Als een van de pakketten resulteert in de foutmelding "pakket niet gevonden", installeert u het opnieuw met behulp van de juiste code hierboven.
    library(readxl)
    library(openxlsx)
    library(tidyverse)
    library(scCustomize)
    library(edgeR)
    library(scDblFinder)
    library(Seurat)
    library(CellChat)

2. Laden in een eencellige dataset voor wondgenezing en uitvoeren van kwaliteitscontrolestappen

NOTITIE: Voor deze bio-informaticaworkflow wordt een heranalyse uitgevoerd van een eerder gepubliceerd spatio-temporeel eencellig huidwondgenezingsexperiment20. De datasetbestanden worden opgeslagen in de beheerde NCBI Gene Expression Omnibus (GEO) repository (https://www.ncbi.nlm.nih.gov/geo/).

  1. Navigeer naar de gegevenssetbestanden van GEO met behulp van het toetredingsnummer GSE204777. Gebruik de volgende link en bekijk de experimentele opzet van het onderzoek: https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE204777
  2. Binnen de GEO-repositorypagina zijn er vijf afzonderlijke batches met gegevens die zijn verkregen uit vijf sequencing-lanes. Klik op de eerste dataset, getiteld GSM6190913. Het volgende is een directe link naar het voorbeeld: https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSM6190913
  3. Scroll naar beneden naar de onderkant van de pagina en download de volgende drie bestanden, met behulp van de ftp- of html-links . Verplaats deze drie bestanden in de bestandsverkenner van de computer naar een map met de naam b1. Zorg ervoor dat de b1-map zich in de werkmap bevindt die is ingesteld in stap 1.4.
    Bestandsnaam: GSM6190913_b1_barcodes.tsv.gz / bestandsgrootte: 18.5 Mb
    Bestandsnaam: GSM6190913_b1_features.tsv.gz / bestandsgrootte: 254.1 Kb
    Bestandsnaam: GSM6190913_b1_matrix.mtx.gz / bestandsgrootte: 151.2 Mb
  4. Haal de mapgegevens op voor de sequencingbestanden met één cel die in stap 2.3 zijn gedownload.
    b1_data_dir <- file.path(getwd(), "b1")
  5. Laad de sequencingbestanden met één cel in. De parameter gene.column specificeert de gebruikte naam van het gen/kenmerk. Gebruik in dit geval gene.column = 2 voor gensymbolen (gene.column = 1 is voor Ensembl-gennamen).
    b1 <- Read10X_GEO(data_dir = b1_data_dir, gene.column = 2)
    NOTITIE: De meeste gegevenssets met één cel hebben geen extra gemultiplexte gegevens, dus de 10x-bestanden die met deze stap worden gegenereerd, hebben niet meerdere lagen. Ga voor de huidige gemultiplexte gegevensset verder met stap 2.6. Voor gegevenssets zonder multiplexing van gegevens, gaat u verder met stap 2.7.
  6. Demultiplex de single-cell dataset met behulp van spatio-temporele barcodes.
    1. Scheid voor de werkende dataset de genexpressie- en HTO-gegevens (multiplexing).
      dataset_rna_counts <- b1$GSM6190913_b1_$`Gene Expression`
      ​dataset_barcodes <- b1$GSM6190913_b1_$`Antibody Capture`
    2. Maak een Seurat-object met behulp van de genexpressiegegevens, terwijl genen die tot expressie komen in minder dan 5 cellen en cellen met minder dan 200 gedetecteerde genen onmiddellijk worden uitgefilterd.
      dataset <- CreateSeuratObject(counts = dataset_rna_counts, min.cells = 5, min.features = 200)
    3. Maak een genexpressiedataset als een laag en genereer een lijst met cellen en barcodes die beide tests gemeen hebben.
      dataset_rna_counts2 <- LayerData(dataset, data = "RNA")
      ​dataset_joint.barcodes <- intersect(colnames(dataset_rna_counts2), colnames(dataset_barcodes))
    4. Subset genexpressie en HTO-tellingen door gezamenlijke celbarcodes.
      dataset_rna_counts2 <- dataset_rna_counts2[, dataset_joint.barcodes]
      ​dataset_barcodes2 <- as.matrix(dataset_barcodes[, dataset_joint.barcodes])
    5. Controleer of de HTO de verwachte barcodenamen heeft.
      ​rownames(dataset_barcodes2)
    6. Maak een nieuwe test om barcode-informatie op te slaan en voeg deze test toe aan het eerder gemaakte Seurat-object.
      dataset_barcode_assay <- CreateAssayObject(counts = dataset_barcodes2)
      ​dataset[["barcodes"]] <- dataset_barcode_assay
    7. Controleer of het object nu meerdere tests bevat.
      DefaultAssay(dataset)
    8. Normaliseer barcodegegevens en voer demultiplexing uit via de HTODemux-functie. Deze methode wordt in detail beschreven in het volgende Seurat vignet: https://satijalab.org/seurat/articles/hashing_vignette
      ​dataset <- HTODemux(dataset, assay = "barcodes", positive.quantile = 0.99)
    9. Groepeer cellen op basis van algemene classificatieresultaten en verwijder cellen zonder streepjescodeclassificatie.
      Idents(dataset) <- "barcodes_classification.global"
      ​dataset <- subset(dataset, idents = "Negative", invert = TRUE)
    10. Groepeer cellen op basis van het maximale HTO-signaal.
      Idents(dataset) <- "barcodes_maxID"
    11. Visualiseer de verdeling van gedetecteerde genen in cellen op basis van hun gemultiplexte barcodes (aanvullende figuur 1).
      VlnPlot(dataset, features = "nFeature_RNA", pt.size = 0.1, log = TRUE)
    12. Hernoem de barcodes naar hun werkelijke wondtijd (dagen na verwonding) en ruimte (2-8 mm) toewijzingen (afkomstig uit het originele manuscript) en wijs ze toe aan een nieuwe metadatavariabele met de naam time_space.
      Idents(dataset) <- "barcodes_maxID"
      levels(dataset)
      dataset <- RenameIdents(dataset,
      "Barcode-1" ="D01_2mm",
      "Barcode-2" ="D01_4mm",
      "Barcode-3" ="D01_6mm",
      "Barcode-4" ="D01_8mm",
      "Barcode-5" ="D03_2mm",
      "Barcode-6" ="D03_4mm",
      "Barcode-7" ="D03_6mm",
      "Barcode-8" ="D03_8mm",
      "Barcode-9" ="D07_2mm",
      "Barcode-10" ="D07_4mm",
      "Barcode-11" ="D07_6mm",
      "Barcode-12" ="D07_8mm",
      "Barcode-13" ="D14_2mm",
      "Barcode-14" ="D14_4mm",
      "Barcode-15" ="D14_6mm",
      "Barcode-16" ="D14_8mm",
      "Barcode-17" ="UW")
      levels(dataset)
      dataset[["time_space"]] <- Idents(dataset)
  7. Voor datasets zonder multiplexing: Maak een Seurat-object, terwijl genen die tot expressie komen in minder dan 5 cellen en cellen met minder dan 200 gedetecteerde genen onmiddellijk worden gefilterd.
    dataset <- CreateSeuratObject(counts = b1, min.cells = 5, min.features = 200)
  8. Schakel over naar het analyseren van de genexpressietest van de dataset.
    DefaultAssay(dataset) <- "RNA"
    Idents(dataset) <- "data"
  9. Bereken als belangrijke stap voor kwaliteitscontrole het percentage mitochondriale genen in elke cel en wijs dit toe als metadatavariabele. Deze methode wordt in detail beschreven in het volgende Seurat vignet: https://satijalab.org/seurat/articles/pbmc3k_tutorial#qc-and-selecting-cells-for-further-analysis
    dataset[["percent.mt"]] <- PercentageFeatureSet(dataset, pattern = "^mt-")
  10. Visualiseer de verdeling van gedetecteerde genen, aantallen RNA en het mitochondriale percentage in alle cellen (aanvullende figuur 2).
    plot1 <- FeatureScatter(dataset, feature1 = "nCount_RNA", feature2 = "percent.mt")
    plot2 <- FeatureScatter(dataset, feature1 = "nFeature_RNA", feature2 = " percent.mt ")
    plot1 + plot2
  11. Er zijn een aantal cellen met een grote mitochondriale inhoud, die correleert met een laag RNA-gehalte; Dit zijn dode of stervende cellen. Verwijder deze cellen van lage kwaliteit uit de gegevensset met behulp van een eerlijke grenswaarde. Gebruik in dit geval de waarden van de originele dataset beschreven in de eerder gepubliceerde studie20, waarin cellen met meer dan 25% mitochondriale genen worden verwijderd.
    dataset <- subset(dataset, subset = nFeature_RNA > 200 & percent.mt < 25)
  12. Visualiseer de verdeling van gedetecteerde genen, het aantal RNA en het mitochondriale percentage in alle cellen na het verwijderen van cellen van lage kwaliteit (aanvullende figuur 3).
    plot1 <- FeatureScatter(dataset, feature1 = "nCount_RNA", feature2 = "percent.mt")
    plot2 <- FeatureScatter(dataset, feature1 = "nFeature_RNA", feature2 = " percent.mt ")
    plot1 + plot2
  13. Als een extra belangrijke kwaliteitscontrolestap kunt u waarschijnlijke doubletten in de gegevensset detecteren. Dit zijn cellen die zijn samengevoegd tijdens druppelsequencing en dus zullen resulteren in genexpressies die niet op het niveau van één cel zijn. Om dit probleem tegen te gaan, zijn er verschillende tools ontwikkeld. Het is belangrijk op te merken dat elke tool bepaalde aannames doet over gegevens met één cel, daarom is het belangrijk dat de gebruiker alle relevante documentatie leest voordat hij een tool gebruikt. Implementeer in deze werkstroom een methode met de naam scDblFinder23. Houd er rekening mee dat deze methode een algoritme gebruikt dat een vast verwacht doubletpercentage oplegt. Gebruik de volgende opdrachten om de scDblFinder-pijplijn uit te voeren.
    DefaultAssay(dataset) <- "RNA"
    sce <- scDblFinder(GetAssayData(dataset, assay="RNA", slot="counts"), samples=Idents(dataset))

    NOTITIE: Gemultiplexte datasets met één cel zoals deze kunnen ook worden gescreend op doubletten door cellen te verwijderen die meerdere streepjescodes uitdrukken. Deze workflow heeft deze methode niet gedemonstreerd omdat de meeste gegevenssets met één cel deze unieke functie niet hebben. In plaats daarvan wordt een meer generaliseerbare pijplijn voor het screenen op doubletten getoond met behulp van de scDblFinder-methode.
  14. Wijs de doubletscore toe aan een nieuwe metagegevensvariabele.
    dataset$scDblFinder.score <- sce$scDblFinder.score
  15. Visualiseer de verdeling van de doubletscore in alle cellen (aanvullende figuur 4).
    VlnPlot(dataset, features = "scDblFinder.score", raster=FALSE, pt.size=0.5)
  16. Verwijder de cellen boven de drempel van 0,25 voor dubbele score. Deze drempel werd gekozen op basis van de hierboven gegenereerde vioolplot, waaruit bleek dat de meeste cellen in de dataset konden worden toegewezen aan zeer hoge of zeer lage dubbele scores, en 0,25 is een redelijke grens voor deze dataset die de overgrote meerderheid van waarschijnlijke doubletten zou verwijderen zonder veel onwaarschijnlijke doubletten te verwijderen.
    dataset <- subset(dataset, scDblFinder.score < 0.25)
  17. Sla de dataset Seurat object op als een RDS-bestand in de werkmap.
    saveRDS(dataset, "dataset_post_Method2.rds")

3. Analyse van een eencellige dataset voor wondgenezing met behulp van Seurat

OPMERKING: (Optionele stap) Als u hier de workflow start, laadt u het opgeslagen RDS-bestand in als een Seurat-object.

dataset <- readRDS("dataset_post_Method2.rds")

  1. Voer de standaard Seurat-werkstroom uit voor normalisatie, schaling en Principal Component Analysis (PCA) van gegevenssets met één cel. Deze standaardworkflow wordt beschreven in de volgende Seurat-vignetten:
    Seurat - Zelfstudie Begeleide clustering: https://satijalab.org/seurat/articles/pbmc3k_tutorial
    Seurat Command Lijst: https://satijalab.org/seurat/articles/essential_commands
    StandaardAssay(gegevensset) <- "RNA"
    dataset <- NormalizeData(object = dataset)
    dataset <- FindVariableFeatures(object = dataset)
    dataset <- ScaleData(object = dataset)
    dataset <- RunPCA(object = dataset)
  2. Visualiseer de hoeveelheid variatie in de dataset ten opzichte van de eerste 50 PCA-dimensies (aanvullende afbeelding 5).
    ElbowPlot(dataset, reduction = "pca", ndims = 50)
    Veel van de belangrijkste variatie vindt plaats binnen de eerste 13 dimensies.
  3. Voer celclustering van de gegevensset uit met behulp van een ingesteld PCA-dimensiebereik van 1-13 en een ingestelde resolutie van 0,1.
    dataset <- FindNeighbors(dataset, verbose = TRUE, dims = 1:13)
    dataset <- FindClusters(dataset, verbose = TRUE, resolution = 0.1)

    NOTITIE: Deze workflow richt zich op grootschalige verschillen in celtypen. Daarom gebruikt het een vrij conservatieve parameter voor het PCA-dimensiebereik, waarbij wordt aangetoond dat de eerste 13 dimensies de overgrote meerderheid van de variatie binnen de dataset vertegenwoordigen. Voor het onderscheiden van cellen in kleinere en zeldzamere subtypen kan de gebruiker een groter aantal dimensies gebruiken voor downstream-analyse, aangezien die zeldzame celsubtypen waarschijnlijk verantwoordelijk zijn voor lagere niveaus van variatie in de dataset. De resolutieparameter varieert van 0 tot 1 en bepaalt de omvang van de categorische scheiding die aan de dataset wordt opgelegd. De instelling van deze parameter is afhankelijk van de onderzoeksvraag van de gebruiker. Gebruik voor het clusteren van cellen in tal van kleine en zeldzame subtypen hogere resoluties voor stroomafwaartse analyse. Aangezien deze workflow tot doel heeft bredere verschillen tussen de belangrijkste celtypen te onderzoeken, gebruikt deze een vrij kleine resolutiewaarde van 0,1, die naar verwachting cellen zal clusteren in minder, grotere groepen. Door gebruik te maken van de instellingen die in stap 3.3 worden genoemd, worden 8 unieke celclusters onderscheiden. Deze clusters worden automatisch toegewezen aan een metagegevensvariabele met de naam 'seurat_clusters'.
  4. Voer UMAP-dimensionale reductie en het vinden van burenanalyse uit met behulp van de eerste 13 PCA-dimensies. Voeg het seed-nummer 123 toe om de reproduceerbaarheid van de resulterende gegevensprojectie te garanderen.
    dataset <- RunUMAP(dataset, verbose = TRUE, dims = 1:13, seed.use = 123)
    NOTITIE: Het UMAP-algoritme is stochastisch en introduceert willekeur in de dimensionale reductie (zie "Stabiliteit en reproduceerbaarheid" in https://cran.r-project.org/web/packages/umap/vignettes/umap.html). Hoewel het gebruik van een consistente seed een "minimaal niveau van reproduceerbaarheid" voor het algoritme biedt, kan de resulterende plot nog steeds enigszins afwijken van wat wordt weergegeven in de representatieve cijfers en downstream-resultaten. Uit tests is gebleken dat de resultaten vooral zullen verschillen tussen computers met Windows en computers met MacOS, waarschijnlijk als gevolg van verschillende implementaties van willekeur in deze besturingssystemen.
  5. Visualiseer de clustering van de cellen op een UMAP-plot (Figuur 1).
    DimPlot(dataset, group.by = "seurat_clusters", raster = FALSE, label = TRUE)
    NOTITIE: De willekeur van het UMAP-algoritme kan enigszins verschillende grafieken genereren, zoals weergegeven in de afbeelding met alternatieve UMAP-grafieken die zijn gegenereerd met dezelfde code als hierboven op computers met Windows en MacOS; Let op de kleine verschillen in de vormen van de clusters. Het is daarom absoluut noodzakelijk dat de gebruiker alle gegevens en plots opslaat en van een tijdstempel voorziet terwijl ze worden gegenereerd, en dat alle downstream-analyses op clusters zorgvuldig en met biologisch begrip in het achterhoofd worden gemaakt, zoals hieronder wordt beschreven voor annotatie van het celtype.
  6. Omdat de originele experimentlabels zijn opgenomen die verwijzen naar waar en wanneer de cellen vandaan kwamen tijdens de wondgenezing, moet u de wondtijd/ruimte-annotatie van de cellen visualiseren op een UMAP-plot (Figuur 2).
    DimPlot(dataset, group.by = "time_space", raster = FALSE, label = FALSE)
  7. Genereer een tabel met de associatie van het celcluster met de annotatie van de wondtijd/ruimte.
    table(dataset$time_space, dataset$seurat_clusters)
  8. Bepaal de identiteit van de belangrijkste celtypen in de dataset. Om dit te doen, berekent u de differentieel tot expressie gebrachte genen (DEG) tussen alle clusters. Haal DEG-lijsten op voor clusters, wijs ze toe aan een variabele en sla de uitvoer op als een tekstbestand met scheidingstekens in de werkmap.
    NOTITIE: Deze stap is CPU-intensief en kan lang duren, afhankelijk van de hardware van de gebruiker.
    Idents(dataset) <- "seurat_clusters"
    Cell_markers <- FindAllMarkers(dataset, max.cells.per.ident = 500, only.pos = TRUE, min.pct = 0.10, logfc.threshold = 0.25)
    write.csv(Cell_markers, file = file.path(getwd(), "dataset_cluster_markers.txt"))
  9. Download en open het meegeleverde dataset_cluster_markers.txt-bestand in een spreadsheet (bijv. Excel) door de inhoud van het tekstbestand te kopiëren en de wizard Tekst importeren te gebruiken om het scheidingsteken en de identiteit van de gennaamkolommen als tekst op te geven. Het is belangrijk om aan te geven dat de gennamen 'Tekst' zijn, anders worden bepaalde gennamen automatisch omgezet in datums, bijvoorbeeld 7 september die verandert in 7 september.
  10. Filter de resultaten in een spreadsheet op basis van de volgende aanbevolen parameters:
    1. Rangschik de avg_log2FC kolom van groot naar klein om alle rijen te rangschikken op basis van afnemende log2-voudige veranderingen (log2FC).
    2. Rangschik de clusterkolom van klein naar groot om alle rijen te rangschikken op basis van toenemende Seurat clusternummers.
    3. Filter de kolom avg_log2FC op getallen groter dan of gelijk aan 2,5 om alleen de meest differentieel tot expressie gebrachte genen (DEG's) in het aangegeven cluster ten opzichte van andere clusters weer te geven.
    4. Filter de kolom pct.1 op getallen groter dan of gelijk aan 0,4. Deze kolom verwijst naar het percentage cellen in het aangegeven cluster dat het aangegeven gen tot expressie brengt (Cluster %) en het instellen van de drempel op 0,4 betekent dat alleen genen die tot expressie komen in ten minste 40% van de cellen in het aangegeven cluster worden weergegeven.
    5. Filter de kolom pct.2 op getallen kleiner dan of gelijk aan 0,2. Deze kolom verwijst naar het percentage cellen NIET in het aangegeven cluster dat het aangegeven gen tot expressie brengt (niet-cluster%), en het instellen van de drempel op 0,2 betekent dat alleen genen die tot expressie komen in maximaal 20% van de cellen die NIET in het aangegeven cluster zijn, worden weergegeven.
    6. Filter de p_val_adj kolom op getallen kleiner dan of gelijk aan 0,01. Deze kolom verwijst naar de aangepaste P-waarde of het percentage valse ontdekkingen (FDR), dat de statistische sterkte van de aangegeven DEG aangeeft, en het instellen van de drempel op 0,01 betekent dat alleen genen met een FDR < 0,01 worden weergegeven.
      OPMERKING: Aanvullende tabel 1 (JoVE_DEGs_cellMarkers.xlsx) bevat de volledige output van gerangschikte differentieel tot expressie gebrachte genen die zijn gebruikt in stap 3.10 van het protocol. Aanvullende tabel 2 toont de top 5 genen voor elk cluster in deze analyse, met de vetgedrukte genen die worden gebruikt voor volgende visualisaties.
  11. Gebruik voor onbevooroordeelde celtype-annotatie van clusters de EnrichR webgebaseerde verrijkingsanalysetool.
    Gebruik de link: https://maayanlab.cloud/Enrichr/
  12. Kopieer de lijsten met DEG's voor elk cluster naar een afzonderlijk EnrichR-venster en klik vervolgens op Analyseren. De EnrichR-tool doorloopt de genenlijst door honderden gecureerde databases en rangschikt elke verrijkte term in elke categorie.
  13. Klik voor het annoteren van het celtype op het tabblad Celtypen hierboven en concentreer u op de top 5 verrijkingen in de drie door celmarkeringen samengestelde databases aan de linkerkant (Afbeelding 3):
    CellMarker 2024 (http://bio-bigdata.hrbmu.edu.cn/CellMarker/)
    Tabula sapiens (https://tabula-sapiens-portal.ds.czbiohub.org/)
    PanglaoDB Uitgebreid (https://panglaodb.se/)
  14. Bevestig op basis van de verrijkingen van de DEG's in deze databases de waarschijnlijke identiteit van de 8 clusters. Merk op dat er twee clusters zijn (2, 6) die zich verrijken als fibroblasten; Combineer deze clusters daarom in annotaties van het type enkele cel. Wijs de celtype-identiteiten als labels toe aan een nieuwe metagegevensvariabele met de naam cell_types.
    Idents(dataset) <- "seurat_clusters"
    dataset[["cell_types"]] <- Idents(dataset)
    Idents(dataset) <- "cell_types"
    dataset <- RenameIdents(dataset,
    "0" = "Macrophage",
    "1" = "Neutrophil",
    "2" = "Fibroblast",
    "3" = "Epithelial cell",
    "4" = "Endothelial cell",
    "5" = "T cell",
    "6" = "Fibroblast",
    "7" = "Smooth muscle cell"
    )
    levels(dataset)
    dataset[["cell_types"]] <- Idents(dataset)
  15. Visualiseer de hernoemde celclusters als annotaties op een UMAP-plot (Afbeelding 4).
    DimPlot(dataset, group.by = "cell_types", raster = FALSE, label = FALSE)
  16. Visualiseer de lokalisatie van de bovenste (vetgedrukte) clustermarkergenen uit Tabel 1 op een reeks UMAP-plots (Figuur 5).
    DefaultAssay(dataset) <- "RNA"
    FeaturePlot(dataset, features = c("Arg1", "Retnlg", "Fgf7", "Dsp", "Tie1", "Cd3g", "Cdh4", "Rgs5"), raster=FALSE, ncol = 4)
  17. Visualiseer de bovenste clustermarkerings-DEG's op een puntdiagram, gegroepeerd op de oorspronkelijke clusternummers (aanvullende afbeelding 6).
    DotPlot(dataset, group.by = "seurat_clusters", features = c("Arg1","Retnlg","Fgf7","Dsp","Tie1", "Cd3g","Cdh4","Rgs5")) + RotatedAxis() + scale_colour_gradient2(low = "blue", mid = "grey", high = "red")
  18. Visualiseer de bovenste clustermarkerings-DEG's op een puntplot, gegroepeerd op de geannoteerde celtypen (Figuur 6).
    DotPlot(dataset, group.by = "cell_types", features = c("Arg1","Retnlg","Fgf7","Dsp","Tie1", "Cd3g","Cdh4","Rgs5")) + RotatedAxis() + scale_colour_gradient2(low = "blue", mid = "grey", high = "red")
  19. Om tijdreeksanalyses uit te voeren, vereenvoudigt u eerst de dataset om de ruimtelijke component te verwijderen. Voor tijdverloopanalyses groepeert u de annotaties van de wondtijd/-ruimte in het totale aantal dagen na verwonding (DPW) met een nieuwe metagegevensvariabele genaamd "DPW".
    Idents(dataset) <- "time_space"
    dataset[["DPW"]] <- Idents(dataset)
    Idents(dataset) <- "DPW"
    new.cluster.ids <- c("D1", "D1", "D1", "D1", "D3", "D3", "D3", "D3", "D7", "D7", "D7", "D7", "D14", "D14", "D14", "D14", "UW")
    names(new.cluster.ids) <- levels(dataset)
    dataset <- RenameIdents(dataset, new.cluster.ids)
    dataset[["DPW"]] <- Idents(dataset)
    Idents(dataset) <- "DPW"
  20. Visualiseer de nieuwe formaties van het wondtijdverloop op een UMAP-plot (aanvullende figuur 7).
    DimPlot(dataset, group.by = "DPW", raster = FALSE, label = FALSE)
  21. Genereer tabellen die aangeven hoeveel cellen van elk type in elke DPW voorkomen.
    ​table(dataset$DPW, dataset$cell_types)
    1. Optionele stap: Om ook DEG-lijsten voor wondtijdverloopgroepen te krijgen, wijst u ze toe aan een variabele en slaat u de uitvoer op als een tekstbestand met scheidingstekens.
      Idents(dataset) <- "DPW"
      Cell_DPW_markers <- FindAllMarkers(dataset, max.cells.per.ident = 500, only.pos = TRUE, min.pct = 0.10, logfc.threshold = 0.25)
      write.csv(Cell_DPW_markers, file = file.path(getwd(), "dataset_DPW_markers.txt"))
  22. Zet de celaantallen om in verhoudingen per categorie om de relatieve veranderingen in de samenstelling van het celtype gedurende het verloop van genezing beter te begrijpen. Visualiseer het aandeel DPW in elk celtype (aanvullende afbeelding 8):
    pt1 <- table(dataset$DPW, dataset$cell_types)
    pt1 <- as.data.frame(pt1)
    pt1$Var1 <- as.character(pt1$Var1)
    ggplot(pt1, aes(x = Var2, y = Freq, fill = Var1)) +
    theme_bw(base_size = 15) +
    geom_col(position = "fill", width = 0.5) +
    xlab("Sample") + RotatedAxis() +
    ylab("Proportion") +
    theme(legend.title = element_blank())
  23. Visualiseer het aandeel celtypen in elke DPW ( Figuur 7).
    pt2 <- table(dataset$cell_types, dataset$DPW)
    pt2 <- as.data.frame(pt2)
    pt2$Var1 <- as.character(pt2$Var1)
    ggplot(pt2, aes(x = Var2, y = Freq, fill = Var1)) +
    theme_bw(base_size = 15) +
    geom_col(position = "fill", width = 0.5) +
    xlab("Sample") +
    ylab("Proportion") +
    theme(legend.title = element_blank())
  24. Sla de dataset Seurat object op als een RDS-bestand in de werkmap.
    saveRDS(dataset, "dataset_post_Method3.rds")

4. Analyseren van celsubtypes met behulp van Seurat

NOTITIE: De kracht van single-cell analyse maakt het mogelijk om zeldzame subtypes te ontdekken en te analyseren binnen de belangrijkste celtypen die hierboven zijn geanalyseerd. Dit voorbeeld richt zich op fibroblasten, die aanvankelijk werden geclusterd in twee Seurat-clusters voordat ze werden gecombineerd tot een enkele categorie. Dit deel van het protocol richt zich specifiek op fibroblasten, met uitsluiting van alle andere celtypen, en onderzoekt hun identiteit en tijdelijke eigenschappen tijdens wondgenezing. Als optionele stap laadt u, indien nodig, het opgeslagen RDS-bestand als een Seurat-object.

dataset <- readRDS("dataset_post_Method3.rds")

  1. Subset de originele dataset op basis van de fibroblastcelidentiteit.
    Idents(dataset) <- "cell_types"
    dataset_fibroblast <- subset(dataset, idents = "Fibroblast")
  2. Voer PCA uit op deze kleinere dataset en visualiseer de hoeveelheid variatie in de dataset met betrekking tot PCA-dimensies (aanvullende afbeelding 9).
    dataset_fibroblast <- RunPCA(dataset_fibroblast, verbose = TRUE)
    ElbowPlot(dataset_fibroblast, reduction = "pca", ndims = 50)

    NOTITIE: Veel van de belangrijkste variatie vindt plaats binnen de eerste 9 dimensies.
  3. Voer celclustering van de gegevensset uit met behulp van een ingesteld PCA-dimensiebereik van 1-9 en een ingestelde resolutie van 0,1.
    dataset_fibroblast <- FindNeighbors(dataset_fibroblast, verbose = TRUE, dims = 1:9)
    dataset_fibroblast <- FindClusters(dataset_fibroblast, verbose = TRUE, resolution = 0.1)

    NOTITIE: Met behulp van deze instellingen onderscheidt het algoritme 3 unieke fibroblastclusters. Deze clusters worden automatisch toegewezen aan een metagegevensvariabele met de naam seurat_clusters.
  4. Voer UMAP-dimensionale reductie en het vinden van burenanalyse uit met behulp van de eerste 9 PCA-dimensies. Voeg het seed-nummer 123 toe om de reproduceerbaarheid van de resulterende gegevensprojectie te garanderen.
    dataset_fibroblast <- RunUMAP(dataset_fibroblast, verbose = TRUE, dims = 1:9, seed.use = 123)
  5. Visualiseer de clustering van de cellen op een UMAP-plot (Figuur 8).
    DimPlot(dataset_fibroblast, group.by = "seurat_clusters", raster = FALSE, label = TRUE)
  6. Visualiseer de annotatie van het wondtijdsverloop van de cellen op een UMAP-plot (aanvullende figuur 10).
    DimPlot(dataset_fibroblast, group.by = "DPW", raster = FALSE, label = FALSE)
  7. Haal DEG-lijsten op voor de drie fibroblastsubtypes en sla ze op in een tekstbestand in de werkmap.
    Idents(dataset_fibroblast) <- "seurat_clusters"
    fibroblast_markers <- FindAllMarkers(dataset_fibroblast, max.cells.per.ident = 500, only.pos = TRUE, min.pct = 0.10, logfc.threshold = 0.25)
    write.csv(fibroblast_markers, file = file.path(getwd(), "fibroblast_cluster_markers.txt"))
  8. Volg dezelfde stappen als hierboven (stappen 3.9-3.10) in een spreadsheet om de DEG's te filteren in de bovenste fibroblastsubtypemarkeringen.
  9. Definieer een aangepaste genenlijst als een variabele door de top 5 fibroblastsubtypemarkeringen voor elk van de drie clusters uit het DEG-tekstbestand te kopiëren.
    FB_type_marker <- c("Plac8", "Cthrc1", "Adam12", "Ifi211", "Plat", "Cdh4", "Aldh3a1", "Ppp1r14a", "Oxtr", "Serpina3c", "Sostdc1", "Scube3", "Ptprz1", "Corin", "Alx4")
  10. Visualiseer de genen in de lijst in de dataset met alleen fibroblasten door de variabele aan te roepen in de functieparameter van de dotplot (Figuur 9).
    DotPlot(dataset_fibroblast, group.by="seurat_clusters", features = FB_type_marker) + RotatedAxis() + scale_colour_gradient2(midpoint = 0, low = "blue", mid = "grey", high = "red")
    DotPlot(dataset_fibroblast, group.by="DPW", features = FB_type_marker) + RotatedAxis() + scale_colour_gradient2(midpoint = 0, low = "blue", mid = "grey", high = "red")
  11. Visualiseer de genen in de lijst in de oorspronkelijke dataset met één cel door de variabele aan te roepen in de functieparameter van de dotplot (aanvullende afbeelding 11).
    DotPlot(dataset, group.by="cell_types", features = FB_type_marker) + RotatedAxis() + scale_colour_gradient2(midpoint = 0, low = "blue", mid = "grey", high = "red")
  12. Visualiseer het aandeel fibroblastsubtypes in elke DPW-categorie (aanvullende figuur 12).
    pt3 <- table(dataset_fibroblast$seurat_clusters, dataset_fibroblast$DPW)
    pt3 <- as.data.frame(pt3)
    pt3$Var1 <- as.character(pt3$Var1)
    ggplot(pt3, aes(x = Var2, y = Freq, fill = Var1)) +
    theme_bw(base_size = 15) +
    geom_col(position = "fill", width = 0.5) +
    xlab("Sample") +
    ylab("Proportion") +
    theme(legend.title = element_blank())
  13. Visualiseer het aandeel DPW-fibroblastcellen in elke fibroblastsubtypecategorie (aanvullende figuur 13).
    pt4 <- table(dataset_fibroblast$DPW, dataset_fibroblast$seurat_clusters)
    pt4 <- as.data.frame(pt4)
    pt4$Var1 <- as.character(pt4$Var1)
    ggplot(pt4, aes(x = Var2, y = Freq, fill = Var1)) +
    theme_bw(base_size = 15) +
    geom_col(position = "fill", width = 0.5) +
    xlab("Sample") +
    ylab("Proportion") +
    theme(legend.title = element_blank())
  14. Sla de dataset Seurat object op als een RDS-bestand in de werkmap.
    saveRDS(dataset_fibroblast, "dataset_fibroblast_post_Method4.rds")

5. Voorbeeld van een vervolganalyse via module scoring

NOTITIE: Een handige methode voor het analyseren van datasets met één cel wordt modulescore genoemd. In deze workflow kan men een genenlijst definiëren op basis van eerdere kennis en vervolgens modulescores berekenen, die potentiële verrijkingen van de genenlijst binnen elke cel kunnen identificeren. Deze scores kunnen worden gemiddeld over celannotaties om mogelijke verrijkingspatronen aan het licht te brengen.

Gebruik hier genlijsten uit een eerder gepubliceerde studie2, waar specifieke genen voor de wondgenezingsfase werden geïdentificeerd met behulp van bulk-RNA-sequentiemonsters uit het hele genezingscontinuüm. De genenlijsten werden opgeslagen in een door tabs gescheiden tekstbestand (aanvullend bestand 2: JoVE_PhaseSpecificGenes.txt) dat nu kan worden gedownload naar de werkmap en kan worden gebruikt om genenlijsten te genereren die de drie belangrijkste genezingsfasen identificeren.

  1. Laad genenlijsten in een variabele door het TEXT-bestand te lezen.
    PhaseSpecificGenes <- read_delim("JoVE_PhaseSpecificGenes.txt", delim="\t", col_names = T)
  2. Scheid de kolommen in individuele genlijstvariabelen en verander de genen in muisnamen waarvan de eerste letter met een hoofdletter is.
    PS_Inflammatory <- PhaseSpecificGenes[1]
    PS_Inflammatory_ms <- lapply(PS_Inflammatory, str_to_sentence)
    PS_Proliferative <- PhaseSpecificGenes[2]
    PS_Proliferative_ms <- lapply(PS_Proliferative, str_to_sentence)
    PS_Resolution <- PhaseSpecificGenes[3]
    PS_Resolution_ms <- lapply(PS_Resolution, str_to_sentence)

    OPMERKING: (Optioneel) Laad indien nodig het opgeslagen RDS-bestand als een Seurat-object.
    dataset <- readRDS("dataset_post_Method3.rds")
  3. Gebruik de genlijsten als modules om elke cel in de dataset te scoren op basis van de drie fasen van genezing.
    dataset <- AddModuleScore(
    object = dataset,
    features = PS_Inflammatory_ms,
    ctrl = 100,
    name = 'Inflammatory'
    )
    dataset <- AddModuleScore(
    object = dataset,
    features = PS_Proliferative_ms,
    ctrl = 100,
    name = 'Proliferative'
    dataset <- AddModuleScore(
    object = dataset,
    features = PS_Resolution_ms,
    ctrl = 100,
    name = 'Resolution'
    )
  4. Visualiseer de geaggregeerde modulescores per celcategorie, inclusief DPW en de belangrijkste celtypen (Afbeelding 10).
    DotPlot(dataset, group.by="DPW", features = c("Inflammatory1","Proliferative1", "Resolution1")) + RotatedAxis() + scale_colour_gradient2(midpoint = 0, low = "blue", mid = "grey", high = "red")
    DotPlot(dataset, group.by="cell_types", features = c("Inflammatory1","Proliferative1", "Resolution1")) + RotatedAxis() + scale_colour_gradient2(midpoint = 0, low = "blue", mid = "grey", high = "red")

6. Voorbeeld van een vervolganalyse via CellChat

NOTITIE: Een andere nuttige en goed geciteerde methode voor de analyse van datasets met één cel is het afleiden van cel-celinteracties. Gebruik in deze workflow het pakket CellChat, dat cel-celcommunicatie afleidt door differentiële ligand-receptorinteracties tussen celgroepen22 te analyseren. Onlangs hebben de ontwikkelaars van CellChat een gedetailleerd stapsgewijs protocol gepubliceerd voor het algemene gebruikervan 24, en dit is een uitstekende bron voor gebruikers die de volgende workflow doorlopen en deze toepassen op hun datasets. De volgende workflow vergelijkt bijvoorbeeld de interacties van alle belangrijke cellen in wonden 1 versus 14 dagen na verwonding (DPW). Elke stap wordt niet in detail beschreven, aangezien alle stappen al zijn beschreven in de officiële CellChat-publicatie24 , evenals tutorials, hier gelinkt:

Gevolgtrekking en analyse van cel-celcommunicatie met behulp van
CellChat: https://github.com/jinworks/CellChat/blob/master/tutorial/CellChat-vignette.html

Vergelijkingsanalyse van meerdere datasets met behulp van CellChat:
https://github.com/jinworks/CellChat/blob/master/tutorial/Comparison_analysis_of_multiple_datasets.html

Optionele stap: Laad indien nodig het opgeslagen RDS-bestand in als een Seurat-object:

dataset <- readRDS("dataset_post_Method3.rds")

  1. Subset de originele dataset in twee datasets volgens de DPW-annotatie.
    Idents(dataset) <- "DPW"
    dataset_D1 <- subset(dataset, ident = "D1")
    dataset_D14 <- subset(dataset, ident = "D14")
  2. Definieer de annotatie waarmee CellChat wordt uitgevoerd --- gebruik in dit geval de belangrijkste celtypen.
    Idents(dataset_D1) <- "cell_types"
    Idents(dataset_D14) <- "cell_types"
  3. Maak de CellChat-objecten en volg de typische CellChat-workflow. Zie tutorials die hierboven zijn gelinkt als gedetailleerde referenties voor elke stap.
    cellchat_D1 <- createCellChat(dataset_D1, group.by = "ident", assay = "RNA")
    cellchat_D14 <- createCellChat(dataset_D14, group.by = "ident", assay = "RNA")
    CellChatDB <- CellChatDB.mouse
    CellChatDB.use <- CellChatDB
    cellchat_D1@DB <- CellChatDB.use
    cellchat_D14@DB <- CellChatDB.use
    cellchat_D1 <- subsetData(cellchat_D1)
    cellchat_D14 <- subsetData(cellchat_D14)
    future::plan("multisession", workers = 4)
    cellchat_D1 <- identifyOverExpressedGenes(cellchat_D1, do.fast = F)
    cellchat_D14 <- identifyOverExpressedGenes(cellchat_D14, do.fast = F)
    cellchat_D1 <- identifyOverExpressedInteractions(cellchat_D1)
    cellchat_D14 <- identifyOverExpressedInteractions(cellchat_D14)
    cellchat_D1 <- computeCommunProb(cellchat_D1, type = "triMean", population.size = TRUE)
    cellchat_D14 <- computeCommunProb(cellchat_D14, type = "triMean", population.size = TRUE)
    cellchat_D1 <- filterCommunication(cellchat_D1, min.cells = 10)
    cellchat_D14 <- filterCommunication(cellchat_D14, min.cells = 10)
    cellchat_D1 <- computeCommunProbPathway(cellchat_D1)
    cellchat_D14 <- computeCommunProbPathway(cellchat_D14)
    cellchat_D1 <- aggregateNet(cellchat_D1)
    cellchat_D14 <- aggregateNet(cellchat_D14)
    cellchat_D1 <- netAnalysis_computeCentrality(cellchat_D1, slot.name = "netP")
    cellchat_D14 <- netAnalysis_computeCentrality(cellchat_D14, slot.name = "netP")
  4. Visualiseer de inkomende versus uitgaande interactiesterktes in alle belangrijke celtypen op elk tijdstip van wondgenezing (aanvullende figuur 14).
    netAnalysis_signalingRole_scatter(cellchat_D1)
    netAnalysis_signalingRole_scatter(cellchat_D14)

    Fibroblasten verhogen hun interacties tussen D1 en D14 DPW dramatisch.
  5. Toon de lijsten van alle significante afgeleide cel-cel communicatieroutes.
    cellchat_D1@netP$pathways
    cellchat_D14@netP$pathways

    De collageenroute is een van de belangrijke routes op zowel D1 als D14 DPW.
  6. Focus op de collageensignaleringsroute en de interactie met fibroblasten.
    pathways.show <- c("COLLAGEN")
  7. Visualiseer de interacties van de collageensignaleringsroute tussen celtypen met behulp van cirkeldiagrammen (aanvullende figuur 15).
    par(mfrow=c(1,2))
    netVisual_aggregate(cellchat_D1, signaling = pathways.show, layout = "circle")
    netVisual_aggregate(cellchat_D14, signaling = pathways.show, layout = "circle")
    par(mfrow=c(1,1))
  8. Visualiseer de interacties van de collageensignaleringsroute tussen celtypen met behulp van akkoorddiagrammen (aanvullende figuur 16).
    par(mfrow=c(1,2))
    strwidth <- function(x) {0.5}
    netVisual_aggregate(cellchat_D1, signaling = pathways.show, layout = "chord", vertex.label.cex = 0.6)
    netVisual_aggregate(cellchat_D14, signaling = pathways.show, layout = "chord", vertex.label.cex = 0.6)
    par(mfrow=c(1,1))
  9. Visualiseer de interacties van de COLLAGEEN-signaalroute met fibroblasten als broncellen (aanvullende figuur 17).
    NOTITIE: De celtypen in de cellchat-objecten worden weergegeven als ID's in de volgorde waarin ze zijn toegewezen in het oorspronkelijke Seurat-object: 1 = Macrofaag, 2 = Neutrofiel, 3 = Fibroblast, 4 = Epitheelcel, 5 = Endotheelcel, 6 = T-cel, 7 = Gladde spiercel.
    par(mfrow=c(1,2))
    strwidth <- function(x) {0.5}
    netVisual_aggregate(cellchat_D1, signaling = pathways.show, layout = "chord", vertex.label.cex = 0.6, sources.use = 3)
    netVisual_aggregate(cellchat_D14, signaling = pathways.show, layout = "chord", vertex.label.cex = 0.6, sources.use = 3)
    ​par(mfrow=c(1,1))
  10. Visualiseer de bijdragen van elk ligand-receptorpaar in de COLLAGEEN-signaleringsroute met fibroblasten als broncellen.
    1. Gebruik van bellendiagrammen (aanvullende figuur 18):
      gg1 <- netVisual_bubble(cellchat_D1, sources.use = 3, targets.use = NULL, signaling = pathways.show, remove.isolate = FALSE)
      gg2 <- netVisual_bubble(cellchat_D14, sources.use = 3, targets.use = NULL, signaling = pathways.show, remove.isolate = FALSE)
      ​gg1 + gg2
    2. Akkoorddiagrammen gebruiken (aanvullende figuur 19):
      par(mfrow=c(1,2))
      strwidth <- function(x) {0.4}
      netVisual_chord_gene(cellchat_D1, sources.use = 3, targets.use = NULL, signaling = pathways.show, lab.cex = 0.6, show.legend= F)
      netVisual_chord_gene(cellchat_D14, sources.use = 3, targets.use = NULL, signaling = pathways.show, lab.cex = 0.6, legend.pos.x = 60)
      ​par(mfrow=c(1,1))
  11. Focus op de Col1a1-Cd44 ligand-receptor interactie binnen de COLLAGEEN-signaleringsroute.
    ​LR.show <- "COL1A1_CD44"
  12. Visualiseer de Col1a1-Cd44 ligand-receptorinteracties tussen celtypen met behulp van akkoorddiagrammen (aanvullende figuur 20).
    strwidth <- function(x) {0.5}
    netVisual_individual(cellchat_D1, signaling = pathways.show, pairLR.use = LR.show, layout = "chord")
    netVisual_individual(cellchat_D14, signaling = pathways.show, pairLR.use = LR.show, layout = "chord")
  13. Voer differentiële CellChat-analyse uit door een gecombineerd CellChat-object te genereren.
    object.list_D14_v_D1 <- list(D1 = cellchat_D1, D14 = cellchat_D14)
    cellchat_D14_v_D1 <- mergeCellChat(object.list_D14_v_D1, add.names = names(object.list_D14_v_D1))
  14. Visualiseer het totale aantal en de relatieve sterkte van cel-celinteracties in de tijdpunten voor wondgenezing (aanvullende figuur 21).
    gg1 <- compareInteractions(cellchat_D14_v_D1, show.legend = F)
    gg2 <- compareInteractions(cellchat_D14_v_D1, show.legend = F, measure = "weight")
    gg1 + gg2
  15. Visualiseer met behulp van een cirkel de verschillende cel-celinteractiesterktes tussen elk celtype terwijl de wond overgaat van dag 1 naar dag 14 (aanvullende figuur 22).
    netVisual_diffInteraction(cellchat_D14_v_D1, weight.scale = T, measure = "weight")
  16. Visualiseer met behulp van een heatmap de verschillende cel-celinteractiesterktes tussen elk celtype terwijl de wond overgaat van dag 1 naar dag 14 (aanvullende figuur 23).
    netVisual_heatmap(cellchat_D14_v_D1, measure = "weight")
  17. Visualiseer met behulp van een rangorde de relatieve bijdragen van individuele routes aan cel-celinteracties met fibroblasten als broncellen op dag 14 versus dag 1 (aanvullende figuur 24).
    rankNet(cellchat_D14_v_D1, mode = "comparison", measure = "weight", sources.use = 3, targets.use = NULL, stacked = T, do.stat = TRUE)
  18. Visualiseer met behulp van bubbelplots de relatieve bijdragen van individuele ligand-receptorparen in de collageensignaleringsroute met fibroblasten als broncellen op dag 14 in vergelijking met dag 1 (aanvullende figuur 25).
    gg1 <- netVisual_bubble(cellchat_D14_v_D1, sources.use = 3, targets.use = NULL, signaling = pathways.show, comparison = c(1, 2), max.dataset = 2, title.name = "Increased signaling in D14", angle.x = 45, remove.isolate = F)
    gg2 <- netVisual_bubble(cellchat_D14_v_D1, sources.use = 3, targets.use = NULL, signaling = pathways.show, comparison = c(1, 2), max.dataset = 1, title.name = "Decreased signaling in D14", angle.x = 45, remove.isolate = F)
    gg1 + gg2
  19. Net als Seurat objecten kunnen CellChat objecten worden opgeslagen en geopend als RDS bestanden.
    saveRDS(cellchat_D1, "cellchat_D1.rds")
    saveRDS(cellchat_D14, "cellchat_D14.rds")
    saveRDS(cellchat_D14_v_D1, "cellchat_D14_v_D1.rds")
  20. Optionele stap: CellChat-objecten kunnen ook worden geopend vanuit RDS-bestanden.
    cellchat_D1 <- readRDS("cellchat_D1.rds")
    cellchat_D14 <- readRDS("cellchat_D14.rds")
    cellchat_D14_v_D1 <- readRDS("cellchat_D14_v_D1.rds")

7. Voorbeeld van een integratieve analyse door het combineren van meerdere single-cell datasets

NOTITIE: Gegevenssets met één cel worden vaak gescheiden in meerdere bestanden omdat ze in batches of groepen zijn geordend. Deze werkstroom laat zien hoe u twee van de vijf batches van de gegevensset voor wondgenezing 20 kunt integreren. De huidige methoden voor de integratie van datasets worden beschreven door de volgende Seurat vignetten:

Inleiding tot scRNA-seq-integratie:
https://satijalab.org/seurat/articles/integration_introduction

Integratieve analyse in Seurat v5:

https://satijalab.org/seurat/articles/seurat5_integration

Notitie: Er zijn tal van integratiemethoden voor datasets met één cel, elk met zijn eigen sterke en zwakke punten. Zie voor meer informatie de uitgebreide benchmark van integratiemethoden25. Het is belangrijk voor de gebruiker om alle relevante documentatie te lezen voordat hij op een bepaalde integratiemethode vertrouwt.

  1. Herhaal alle stappen in methode 2 voor een andere batch van de Hu et al. dataset20. In het volgende protocol wordt batch #3 gebruikt. Het aanvullende R-scriptbestand wordt meegeleverd en kan worden gebruikt om batch #3 (aanvullend bestand 3: JoVE_Rscript_b3. R). Vergeet niet om een nieuwe variabele te maken en te gebruiken voor de dataset --- in de onderstaande code, gebruik "dataset_b3" voor dataset batch #3.
    1. Optionele stap: Open indien nodig de twee gegevenssets als Seurat-objecten vanuit hun RDS-bestanden die zijn opgeslagen in de werkmap:
      dataset <- readRDS("dataset_post_Method2.rds")
      dataset_b3 <- readRDS("dataset_b3_post_Method2.rds")
  2. Wijs een nieuwe variabele toe aan elke dataset met de naam 'batch' om de dataset van oorsprong te labelen in volgende analyses.
    dataset@meta.data$batch <- "b1"
    dataset_b3@meta.data$batch <- "b3"
  3. Voer de samenvoeging van de twee gegevenssets uit door Seurat uit te voeren, waarbij op batches gebaseerde cel-ID-annotaties worden toegevoegd en voer vervolgens de standaard Eurat-werkstroom uit voor de samengevoegde gegevensset, zoals beschreven in methode 3.
    dataset_merged <- merge(x = dataset, y = c(dataset_b3), add.cell.ids = c("b1", "b3"), merge.data = TRUE)
    DefaultAssay(dataset_merged) <- "RNA"
    dataset_merged <- NormalizeData(dataset_merged)
    dataset_merged <- FindVariableFeatures(dataset_merged)
    dataset_merged <- ScaleData(dataset_merged)
    dataset_merged <- RunPCA(dataset_merged)
    ElbowPlot(dataset_merged, reduction = "pca", ndims = 50)
  4. Voer clustering en UMAP-analyse uit op de gecombineerde dataset voorafgaand aan de gegevensintegratie.
    dataset_merged <- FindNeighbors(dataset_merged, dims = 1:10, reduction = "pca")
    dataset_merged <- FindClusters(dataset_merged, resolution = .1, cluster.name = "unintegrated_clusters")
    dataset_merged <- RunUMAP(dataset_merged, dims = 1:10, seed.use = 123, reduction = "pca", reduction.name = "umap.unintegrated")
  5. Visualiseer de UMAP-plot op basis van cluster- en batchnummers (aanvullende afbeelding 26).
    DimPlot(dataset_merged, reduction = "umap.unintegrated", group.by = c("seurat_clusters", "batch"))
  6. Toon de verdeling van de celnummers in elk cluster op basis van het batchnummer.
    table(dataset_merged$batch, dataset_merged$seurat_clusters)
    NOTITIE: Uit de UMAP-plot en de tabel lijken er geen significante batcheffecten te zijn voor deze twee datasets. Bewijs van batcheffecten zou zich manifesteren als onverwachte discrepanties in de clusterverdeling tussen de twee datasets, wat zou kunnen betekenen dat er potentiële technische verschillen zijn tussen de datasets die de werkelijke biologische overeenkomsten overheersen.
  7. Voer Seurat data-integratie uit met behulp van de RPCA-methode. Voor meer informatie over deze en andere methoden voor gegevensintegratie kunt u het Seurat vignet lezen dat hierboven is gelinkt.
    dataset_merged <- IntegrateLayers(
    object = dataset_merged, method = RPCAIntegration,
    orig.reduction = "pca", new.reduction = "integrated.rpca",
    verbose = TRUE
    )
  8. Voer clustering en UMAP-analyse uit op de gecombineerde dataset na gegevensintegratie.
    FindNeighbors(dataset_merged, dims = 1:10, reduction = "integrated.rpca")
    dataset_merged <- FindClusters(dataset_merged, resolution = .1, cluster.name = "rpca_clusters")
    dataset_merged <- RunUMAP(dataset_merged, dims = 1:10, seed.use = 123, reduction = "integrated.rpca", reduction.name = "umap.rpca")
  9. Visualiseer de UMAP-plot op basis van cluster- en batchnummers na integratie (aanvullende afbeelding 27).
    DimPlot(dataset_merged, reduction = "umap.rpca", group.by = c("seurat_clusters","batch"))
  10. Toon de verdeling van celnummers in elk cluster op basis van batchnummer na integratie.
    table(dataset_merged$batch, dataset_merged$seurat_clusters)
    Uit de UMAP-plot en de tabel met de geïntegreerde gegevens blijkt dat er nu een uitstekende overlap is tussen de twee batches in verschillende clusters. Interessant is dat de integratie van de gegevens resulteerde in de identificatie van een extra cluster met behulp van dezelfde clusterparameters.
  11. Na integratie van de dataset en voorafgaand aan downstream-analyses moeten de lagen van de samengevoegde dataset worden samengevoegd.
    dataset_merged <- JoinLayers(dataset_merged)
  12. Sla de dataset Seurat object op als een RDS-bestand in de werkmap.
    saveRDS(dataset_merged, "merged_dataset_post_Method7.rds")

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Beginnend met methode #2, doorloopt het protocol de stappen voor het laden en uitvoeren van kwaliteitscontrolestappen op een eencellige dataset voor wondgenezing. Na het maken van het Seurat-object (stap 2.6.2), worden de twee assays in een reeks stappen samengevoegd binnen de dataset (RNA en eiwit; stappen 2.6.3-2.6.7) en wordt de eiwittest gedecomplexeerd volgens spatio-temporele barcodes (stappen 2.6.8-2.6.9). De decomplexing-functie wijst verschillende metagegevenslabels toe aan elke cel in de gegevensset, waaronder "barcodes_maxID", die de meest waarschijnlijke spatio-temporele streepjescode van elke cel identificeert (stap 2.6.10). In stap 2.6.11 wordt de vioolplotfunctie uitgevoerd om de verdeling van gedetecteerde genen in cellen te visualiseren op basis van hun gemultiplexte barcodes. Het representatieve resultaat van deze stap (aanvullende figuur 1) laat zien dat er een redelijk gelijkmatige verdeling van gedetecteerde genen is voor elke barcode, wat belangrijk is voor de integriteit van de dataset en de stroomafwaartse analyse van wondgenezingstijdstippen. Na het toewijzen van het juiste label aan de eiwitbarcodes (stap 2.6.12), laat het protocol vervolgens zien hoe kwaliteitscontrolestappen moeten worden uitgevoerd op de RNA-assay van de dataset, te beginnen met het berekenen van het percentage mitochondriale genen in elke cel (stap 2.9). In stap 2.10 wordt de functie van het spreidingsdiagram uitgevoerd om de verdeling van gedetecteerde genen, het aantal RNA en het mitochondriale percentage in alle cellen te visualiseren. De representatieve resultaten van deze stap (aanvullende figuur 2) laten zien dat er een aantal cellen zijn met een grote mitochondriale inhoud, die correleert met een laag RNA-aantal en dode of stervende cellen identificeert. Na het verwijderen van cellen met een laag RNA-aantal en een groot mitochondriaal gehalte (stap 2.11), wordt in stap 2.12 een andere functie voor het spreidingsdiagram uitgevoerd op de subset-dataset, en het representatieve resultaat van deze stap (aanvullende figuur 3) laat zien dat de verdeling van gedetecteerde genen en het percentage mitochondriaal RNA per cel nu normaler is, wat de weg vrijmaakt voor robuuste stroomafwaartse analyses. Vervolgens beschrijft het protocol het gebruik van de scDblFinder-functie om waarschijnlijke doubletten in de dataset te identificeren en wijst het een nieuwe metagegevens met de naam "scDblFinder.score" toe aan elke cel (stappen 2.13-2.14). In stap 2.15 wordt de vioolplotfunctie uitgevoerd om de verdeling van doubletscores in de dataset te visualiseren, en het representatieve resultaat van deze stap (aanvullende figuur 4) laat zien dat er een aantal cellen zijn met relatief hoge doubletscores, en dat 0,25 een natuurlijke grens lijkt te zijn waarboven er een populatie van waarschijnlijke doubletten is. Daarom wordt in de volgende stappen deze parameter gebruikt om de gegevensset in te stellen op cellen onder de grenswaarde (stap 2.16), waardoor de kwaliteitscontrolestappen voor deze gegevensset met één cel worden voltooid.

Beginnend met methode #3, doorloopt het protocol de stappen voor het analyseren van de kwaliteitsgecontroleerde eencellige dataset voor wondgenezing met behulp van het Seurat-pakket en de workflow. Na normalisatie en schaling van de RNA-gegevens wordt PCA-analyse uitgevoerd (stap 3.1). In stap 3.2 wordt de elleboogplotfunctie gebruikt om de hoeveelheid variatie in de dataset te visualiseren met betrekking tot de eerste 50 PCA-dimensies en het representatieve resultaat van deze stap (Aanvullende figuur 5) laat zien dat veel van de belangrijkste variatie optreedt binnen de eerste 13 dimensies, zoals aangegeven door de bocht in de grafiek. Het protocol laat vervolgens zien hoe buren kunnen worden gevonden en celclustering (stap 3.3) en UMAP-dimensionale reductie (stap 3.4) van de dataset kunnen worden uitgevoerd met behulp van de eerste 13 PCA-dimensies en een relatief lage clusterresolutieparameter van 0,1, die beide werden gekozen om de meest generaliseerbare hoofdceltypen in wonden te identificeren. In stap 3.5 wordt de dimensionale plotfunctie uitgevoerd om de clustering van de cellen op een UMAP-plot en het representatieve resultaat van deze stap (Figuur 1) laat zien dat alle cellen in de dataset zijn geclusterd rond 8 belangrijke kleurgecodeerde Seurat-clustergroepen, met enigszins verschillende UMAP-plots die zijn verkregen van een computer met Windows (links) en MacOS (rechts). In stap 3.6 wordt een andere dimensionale plotfunctie uitgevoerd om de wondtijd/ruimte-annotatie van de cellen en het representatieve resultaat van deze stap (Figuur 2) geeft aan dat alle cellen in de gegevensset zijn verspreid op basis van hun tijd/ruimte-oorsprong, zonder duidelijke clustering volgens de tijd/ruimte-annotatie. Het protocol beschrijft vervolgens hoe lijsten van differentieel tot expressie gebrachte genen kunnen worden verkregen en deze in een tekstbestand kunnen worden opgeslagen (stap 3.8), de gegevenstabel in een spreadsheet kunnen worden geopend en verschillende filterstappen kunnen worden uitgevoerd om de hoogst gerangschikte clustermarkers voor elke celcluster te verkrijgen (stappen 3.9-3.10.6). Het representatieve resultaat van deze stappen (Aanvullende tabel 1) is het uiteindelijke spreadsheetbestand dat de volledige output van gerangschikte differentieel tot expressie gebrachte genen bevat, terwijl een ander representatief resultaat (Aanvullende tabel 2) is een vereenvoudigde tabel met de top 5 van opgereguleerde en tot expressie gebrachte genen voor elke Eurat-cluster. Het protocol beschrijft vervolgens hoe een webgebaseerde functionele verrijkingsanalysetool genaamd EnrichR kan worden gebruikt om vermeende celtypen te identificeren op basis van de genen van de topclustermarkers (stappen 3.11-3.12) en de representatieve resultaten van deze stappen (Figuur 3) zijn bijgesneden schermafbeeldingen van de EnrichR-uitvoer met de meest verrijkte celtypen voor elk van de acht celclusters. Het protocol wijst vervolgens een nieuw metadatalabel met de naam "cell_types" toe aan alle cellen in de respectievelijke Seurat-clusters op basis van hun meest verrijkte celtype-annotaties (stap 3.14). In stap 3.15 wordt de dimensionale plotfunctie uitgevoerd om de hernoemde celclusters te visualiseren als celtypeannotaties op een UMAP-plot en de representatieve resultaten van deze stap (Figuur 4) toonde aan dat alle cellen in de dataset geclusterd waren rond de belangrijkste kleurgecodeerde celtypen. In stap 3.16 werd de functie van de functiegrafiek gebruikt om de lokalisatie van de genen van de topclustermarker (uit aanvullende tabel 2) op een reeks UMAP-plots en de representatieve resultaten (Figuur 5) zijn een raster van UMAP-grafieken die de hoge expressie van de topcelmarkergenen binnen hun respectievelijke belangrijkste celtypeclusterlocaties laten zien. In de stappen 3.17 en 3.18 werd de dotplot-functie uitgevoerd om de relatieve expressieniveaus van topclustermarkergenen in cellen te visualiseren, eerst gegroepeerd op hun oorspronkelijke Seurat clusternummers (stap 3.17) en ten tweede gegroepeerd op geannoteerde celtypelabels (stap 3.18). De representatieve resultaten van deze stappen bevestigden het hoge expressieniveau van de genen van de topcelmarkers alleen in hun respectievelijke Seurat-clusters (Aanvullende figuur 6) en alleen in hun respectieve belangrijkste celtypen (Figuur 6). De volgende stap in het protocol vereenvoudigt de oorspronkelijke ruimtelijk-temporele eiwitgebaseerde labels tot strikt temporele annotaties, die cellen identificeren op basis van de dagen na verwonding (DPW) waaruit ze afkomstig zijn. In stap 3.20 wordt de dimensionale plotfunctie uitgevoerd om de cellen te visualiseren als DPW-annotaties op een UMAP-plot en de representatieve resultaten van deze stap (Aanvullende figuur 7) toonde de lokalisatie van annotaties van het wondverloop in de eencellige dataset voor wondgenezing. Zoals verwacht domineerden dag 1 (D1) annotaties de neutrofielen- en macrofaagclusters, terwijl de latere tijdstippen van wondgenezing meer vertegenwoordigd waren in andere celtypen. In de volgende stappen in het protocol werden gestapelde staafdiagrammen gebruikt om eerst de verhoudingen van DPW over verschillende celtypen te visualiseren (stap 3.22) en vervolgens om de verhoudingen van celtypen op verschillende tijdstippen te visualiseren (3.23). De representatieve resultaten van deze stappen zijn proportiegrafieken die het relatieve aantal DPW-cellen in elke hoofdcategorie van het celtype weergeven (Aanvullende figuur 8) en het relatieve aantal belangrijke celtypen in elke DPW-categorie (Figuur 7). Deze resultaten bevestigden de bekende cellulaire cascade van huidwondgenezing, waarbij immuuncellen (neutrofielen en macrofagen) de vroege tijdstippen tijdens de ontstekingsfase domineren en de andere celtypen (epitheelcellen en endotheelcellen) beginnen te verschijnen tijdens de proliferatieve fase, waarbij fibroblasten vooral dominant zijn op de latere tijdstippen tijdens het oplossen van de wond.

Beginnend met methode #4, schetst het protocol de stappen voor het gebruik van Seurat om zich te concentreren op een individueel hoofdceltype in de eencellige dataset om potentiële cellulaire subtypes tijdens wondgenezing te identificeren. Het protocol richt zich op fibroblasten, die aanvankelijk in twee Seurat-clusters werden geclusterd voordat ze in een enkele categorie werden gecombineerd, en beschrijft hoe een nieuw Seurat-object kan worden gemaakt dat alleen de fibroblasten uit de oorspronkelijke dataset bevat (stap 4.1). De Seurat-workflow wordt uitgevoerd op deze fibroblastspecifieke dataset (stappen 4.2-4.4), waarbij stap 4.2 resulteert in een elleboogplot (aanvullende figuur 9) die aantoont dat veel van de belangrijkste variatie in de fibroblastdataset plaatsvindt binnen de eerste 9 PCA-dimensies. In stap 4.5 wordt de dimensionale plotfunctie uitgevoerd om de clustering van de cellen op een UMAP-plot te visualiseren, en de representatieve resultaten van deze stap (Figuur 8) toonden de fibroblasten in de dataset geclusterd rond de 3 kleurgecodeerde celsubtypes. Het visualiseren van de fibroblastdataset op basis van hun DPW-annotatie (stap 4.6), resulteerde in een UMAP-plot (aanvullende figuur 10) met fibroblasten in de dataset die overal zijn verdeeld volgens hun DPW-annotatie. Het protocol beschrijft vervolgens hoe lijsten van differentieel tot expressie gebrachte genen kunnen worden verkregen en deze in een tekstbestand kunnen worden opgeslagen (stap 4.7), de gegevenstabel in Excel kan worden geopend en verschillende filterstappen kunnen worden uitgevoerd om de hoogst gerangschikte clustermarkers voor elke celcluster te verkrijgen (stap 4.8), en een nieuwe variabele toe te wijzen met een lijst van de belangrijkste fibroblastmarkergenen met de naam "FB_type_marker" (stap 4.9). In stap 4.10 wordt de dotplot-functie gebruikt om de genen in de lijst in de dataset met alleen fibroblasten te visualiseren door de variabele "FB_type_marker" aan te roepen in de functieparameter, en de representatieve resultaten van deze stap (Figuur 9) zijn dotplots die een hoge expressie van fibroblastsubtypemarkers alleen in hun respectievelijke clustercategorieën bevestigen (boven) maar eerlijk verdeeld over DPW-categorieën (onder). In stap 4.11 wordt dezelfde kenmerkenvariabele aangeroepen om de fibroblastmarkergenen in de totale dataset voor wondgenezing te visualiseren, en het representatieve resultaat (aanvullende figuur 11) is een dotplot die de hoge expressie van fibroblastsubtypemarkers bevestigde, meestal in de oorspronkelijke fibroblast. Ten slotte gebruikten de volgende stappen in het protocol gestapelde staafdiagrammen om eerst de verhoudingen van DPW over de drie fibroblastsubtypes te visualiseren (stap 4.12) en vervolgens om de verhoudingen van fibroblastsubtypes over verschillende tijdstippen te visualiseren (stap 4.13). De representatieve resultaten van deze stappen zijn verhoudingsgrafieken die het relatieve aantal DPW-cellen in elke categorie van het fibroblastsubtype weergeven (aanvullende figuur 12) en het relatieve aantal fibroblastsubtypes in elke DPW-categorie (aanvullende figuur 13). Deze resultaten wijzen op een significante verandering in de verhoudingen van het fibroblastsubtype gedurende het verloop van genezing, waarbij het eerste fibroblastsubtype (cluster 0) sterk dominant is in wonden in een vroeg stadium (D1 en D3), het tweede subtype (cluster 1) dominant is tijdens wondresolutie (D14) en het derde subtype (cluster 2) het hoogst is tijdens de proliferatieve fase van wondgenezing (D7).

Beginnend met methode #5, doorloopt het protocol de stappen voor het analyseren van een eencellige dataset voor wondgenezing met behulp van de modulescorefunctie in Seurat. Het protocol beschrijft eerst de stappen van het gebruik van een tekstbestand met tabbladen om genensets te uploaden naar variabelen in R (stappen 5.1-5.2), gevolgd door de toepassing van de modulescorefunctie op drie genensets die betrekking hebben op de drie belangrijkste fasen van wondgenezing (stap 5.3). In stap 5.4 wordt de dotplot-functie gebruikt om de geaggregeerde modulescores in twee verschillende metadatacategorieën te visualiseren, en de representatieve resultaten voor deze stap (Figuur 10) zijn dotplots die de gemiddelde expressie van de belangrijkste genezingsfasemodules weergeven in cellen in de dagen na verwonding categorie (DPW, rechts) en in de categorie hoofdceltypen (links). Deze resultaten tonen aan dat de toepassing van op bulksequencing gebaseerde genexpressieprofielen op datasets voor expressie van één cel op een pseudo-bulkmanier een krachtige methode is voor vergelijkende bio-informaticabenaderingen door gebruik te maken van eerder gepubliceerde datasets op het gebied van wondgenezing.

Beginnend met methode #6, doorloopt het protocol de stappen voor het analyseren van een van Seurat afgeleide eencellige dataset voor wondgenezing met behulp van het CellChat-pakket en de workflow volgens een specifieke wetenschappelijke vraag om cellen te vergelijken die zijn afgeleid van vroege in vergelijking met late fase wonden. Het protocol verdeelt eerst de totale Seurat-dataset in twee tijdstippen na het letsel, één tijdens de ontstekingsfase (dag 1 (D1)) en de andere tijdens het oplossen van de wond (dag 14 (D14)) (stap 6.1). Er worden twee CellChat-objecten gemaakt en het protocol doorloopt alle typische functies van het CellChat-protocol om alle vermeende interacties te berekenen tussen de celtypen die zijn geïdentificeerd in methode #3 van het protocol (stappen 6.2-6.3). In stap 6.4 wordt de signaalverstrooiingsdiagramfunctie uitgevoerd om de inkomende en uitgaande interactiesterktes in alle belangrijke celtypen op elk tijdstip van wondgenezing te visualiseren. De representatieve resultaten van deze stap (Aanvullende figuur 14) zijn spreidingsdiagrammen die de sterkte van inkomende (y-as) en uitgaande (x-as) interacties voor de belangrijkste celtypen op D1 (links) en D14 (rechts) tijdstippen weergeven. Deze resultaten toonden aan dat immuuncellen zoals neutrofielen en macrofagen de hoogste cel-celinteractiesterkte hadden tijdens de ontstekingsfase, maar fibroblasten domineerden de cel-celinteracties tijdens het oplossen van wonden, wat tientallen jaren van onderzoek naar wondgenezing bevestigt. De volgende stappen richten de analyse op een van de aanzienlijk verrijkte routes, de collageenroute (stappen 6.5-6.6). In stap 6.7 wordt de cirkeldiagramfunctie uitgevoerd om de interacties van de collageensignaleringsroute tussen celtypen op de twee tijdstippen te visualiseren. De representatieve resultaten van deze stap (Aanvullende figuur 15) zijn cirkeldiagrammen die de afgeleide collageenroute signaleringsinteracties tussen alle celtypen op D1 (links) en D14 (rechts) laten zien. In stap 6.8 worden dezelfde interacties gevisualiseerd met behulp van de akkoorddiagramfunctie, met de representatieve resultaten (Aanvullende figuur 16), zijnde akkoorddiagrammen die de afgeleide collageenroute signaleringsinteracties tussen alle celtypen op elk tijdstip weergeven. Zoals verwacht toonden deze resultaten aan dat fibroblasten de primaire broncellen waren voor de collageensignaleringsroute, hoewel de informatiestroom meer beperkt was tot immuuncellen bij D1 in vergelijking met D14. Om zich te concentreren op de fibroblast als broncel in de cel-celinteracties, herhaalt stap 6.9 de akkoorddiagramfunctie door een broncelparameter toe te voegen, en de representatieve resultaten (Aanvullende figuur 17) zijn akkoorddiagrammen die de afgeleide collageenroute signaleringsinteracties met fibroblasten als broncellen op elk tijdstip weergeven. In stap 6.10 worden twee functies uitgevoerd om de bijdragen van elk ligand-receptorpaar in de collageensignaleringsroute met fibroblasten als broncellen te visualiseren, de ene met behulp van bellendiagrammen (stap 6.10.1) en de andere met behulp van akkoorddiagrammen (stap 6.10.2). De representatieve resultaten tonen de afgeleide bijdragen van elk ligand-receptorpaar in de collageenroute die signaleert met fibroblasten als broncellen op de tijdstippen D1 (links) en D14 (rechts) met behulp van beide bellenplots (Aanvullende figuur 18) en akkoorddiagrammen (Aanvullende figuur 19). Deze resultaten toonden aan dat bij D1 de collageenroute afkomstig van fibroblasten beperkt was tot neutrofielen en macrofagen met een dominantie van Cd44- en Sdc4-receptoren, maar in D14 fungeerden andere cellen als ontvangers via een verscheidenheid aan receptoren, waaronder integrines. Om zich te concentreren op de Col1a1-Cd44 ligand-receptorinteractie, die sterke sterktes vertoonde in fibroblastinteracties, wordt een parameter ingesteld (stap 6.11) en vervolgens gebruikt in stap 6.12 in een akkoorddiagramfunctie om deze specifieke ligand-receptorinteractie tussen alle celtypen te visualiseren, met de representatieve resultaten (Aanvullende figuur 20), zijnde akkoorddiagrammen die de afgeleide Col1a1-Cd44 ligand-receptor interacties tussen alle celtypen op de D1 (links) en D14 (rechts) tijdstippen laten zien. Deze resultaten toonden aan dat terwijl in D1 deze interactie beperkt is tot fibroblasten als broncellen, in D14 macrofagen en gladde spiercellen ook als broncellen fungeren. Vervolgens beschrijft het protocol hoe differentiële CellChat-analyse kan worden uitgevoerd door eerst de D1 en D14 CellChat-objecten samen te voegen (stap 6.13). In stap 6.14 wordt de functie voor het vergelijken van interacties uitgevoerd om het totale aantal en de relatieve sterkte van cel-celinteracties tussen de twee tijdstippen voor wondgenezing en de representatieve resultaten (Aanvullende figuur 21) zijn de resulterende staafdiagrammen die het totale aantal (links) en de sterkte (rechts) van afgeleide interacties weergeven in cellen bestaande uit D1- en D14-wonden, met een hoger aantal interacties in D14 in tegenstelling tot hogere relatieve sterktes van interacties in D1. In de stappen 6.15 en 6.16 worden twee functies gebruikt om de differentiële cel-celinteractiesterktes tussen elk celtype te visualiseren terwijl de wond overgaat van dag 1 naar dag 14 met hun respectievelijke representatieve resultaten, de eerste is een cirkeldiagram (stap 6.15, Aanvullende figuur 22) en ten tweede een heatmap (stap 6.16, Aanvullende figuur 23), waarbij verhoogde interacties in D14 in vergelijking met D1 in rood worden weergegeven en in blauw die afnemen. Zoals verwacht zijn neutrofielen- en macrofaag-gemedieerde interacties verhoogd in D1, en fibroblast-gemedieerde interacties verhoogd in D14. In stap 6.17 wordt de rangschikkingsfunctie gebruikt om een grafiek te maken die de relatieve bijdragen van individuele routes aan cel-celinteracties met fibroblasten als broncellen op D14 rangschikt in vergelijking met D1, en de representatieve resultaten (Aanvullende figuur 24) tonen de resulterende rangplot met D1 bovenaan in rood en D14 onderaan in blauw, waarbij verschillende paden exclusief worden weergegeven in D1 of D14 en vele andere een activeringsgradiënt laten zien. Ten slotte worden in stap 6.18 twee bubble plot-functies gebruikt om de relatieve bijdragen van individuele ligand-receptorparen in de collageensignaleringsroute met fibroblasten als broncellen op D14 aan te tonen in vergelijking met D1, met de bijbehorende representatieve resultaten (Aanvullende figuur 25) met verhoogde (links) en verminderde (rechts) signaalparen in D14 in vergelijking met D1 over de vele cel-celinteracties op de x-as. Zoals verwacht hadden fibroblasten veel meer uitgaande ligand-receptorpaarinteracties over verschillende ontvangercellen in D14-wonden in vergelijking met D1-wonden, waar de communicatie tijdens de ontstekingsfase beperkter was in de richting van neutrofielen en macrofagen.

Beginnend met methode #7, doorloopt het protocol de stappen voor het integreren van twee eencellige datasets voor wondgenezing met behulp van Seurat. Het protocol beschrijft eerst de stappen voor het samenvoegen van twee batches van de gepubliceerde single-cell datasets en het toepassen van de standaard Seurat workflow op de samengevoegde dataset (stappen 7.1-7.4). In stap 7.5 wordt de dimensionale plotfunctie gebruikt om de UMAP-plot te visualiseren op basis van cluster- en batchnummers van de samengevoegde maar nog niet geïntegreerde dataset voor wondgenezing. De representatieve resultaten van deze stap (aanvullende figuur 26) zijn UMAP-plots die de verdeling van Seurat-clusters (links) en batchnummers (rechts) visualiseren, wat aantoont dat er geen significante batcheffecten lijken te zijn voor deze twee datasets vóór de gegevensintegratie. Het protocol voert vervolgens gegevensintegratie uit met behulp van de RPCA-methode en de follow-up Seurat-workflow van de geïntegreerde dataset (stappen 7.7-7.8). In stap 7.9 wordt de dimensionale plotfunctie gebruikt om de UMAP-plot te visualiseren op basis van cluster- en batchnummers van de geïntegreerde wondgenezingsdataset. De representatieve resultaten van deze stap (aanvullende figuur 27) zijn UMAP-plots die de verdeling van Seurat-clusters (links) en batchnummers (rechts) visualiseren, wat aantoont dat er nu een nog grotere overlap was tussen de twee batches over verschillende clusters. De resultaten tonen ook de opkomst van een extra cluster na integratie van de gegevens, wat kan wijzen op een groter vermogen om potentieel significante celsubtypes te identificeren nadat de technische effecten van gegevensbatches zijn gecontroleerd.

figure-results-1
Figuur 1: UMAP-plot met alle cellen in de dataset, geclusterd rond 8 belangrijke kleurgecodeerde clustergroepen. Resultaten verkregen van een computer met Windows (links) en MacOS (rechts). Dit cijfer komt overeen met stap 3.5. Klik hier om een grotere versie van deze figuur te bekijken.

figure-results-2
Figuur 2: UMAP-plot met alle cellen in de dataset, verspreid volgens hun tijd/ruimte-oorsprong, zonder duidelijke clustering volgens de tijd/ruimte-annotatie. Dit cijfer komt overeen met stap 3.6. Klik hier om een grotere versie van deze figuur te bekijken.

figure-results-3
Figuur 3: Bijgesneden schermafbeeldingen van de EnrichR-outputs, met de meest verrijkte celtypen voor elk celcluster. Dit cijfer komt overeen met stap 3.13. Klik hier om een grotere versie van deze figuur te bekijken.

figure-results-4
Figuur 4: UMAP-plot met alle cellen in de dataset, gegroepeerd rond de belangrijkste kleurgecodeerde celtypen. Dit cijfer komt overeen met stap 3.15. Klik hier om een grotere versie van deze figuur te bekijken.

figure-results-5
Figuur 5: Raster van UMAP-plots die de hoge expressie van de topcelmarkergenen binnen de belangrijkste celtypeclusters laten zien. Dit cijfer komt overeen met stap 3.16. Klik hier om een grotere versie van deze figuur te bekijken.

figure-results-6
Figuur 6: Puntdiagrammen die het hoge expressieniveau van de markergenen van de topcellen alleen in hun respectievelijke belangrijkste celtypen bevestigen. Dit cijfer komt overeen met stap 3.18. Klik hier om een grotere versie van deze figuur te bekijken.

figure-results-7
Figuur 7: Grafiek met de relatieve aantallen van de belangrijkste celtypen in elke DPW-categorie. Dit cijfer komt overeen met stap 3.23. Klik hier om een grotere versie van deze figuur te bekijken.

figure-results-8
Figuur 8: UMAP-plot met fibroblasten in de dataset, geclusterd rond de 3 kleurgecodeerde celsubtypes. Dit cijfer komt overeen met stap 4.5. Klik hier om een grotere versie van deze figuur te bekijken.

figure-results-9
Figuur 9: Puntdiagrammen die een hoge expressie van fibroblastsubtypemarkers bevestigen, alleen in hun respectievelijke clustercategorieën, maar eerlijk verdeeld over DPW-categorieën. Dit cijfer komt overeen met stap 4.10. Klik hier om een grotere versie van deze figuur te bekijken.

figure-results-10
Figuur 10: Puntdiagrammen die de gemiddelde expressie van de belangrijkste genezingsfasemodules over cellen heen per DPW en per hoofdceltypen weergeven. Dit cijfer komt overeen met stap 5.4. Klik hier om een grotere versie van deze figuur te bekijken.

Aanvullende figuur 1: Resultaten die aantonen dat er een redelijk gelijkmatige verdeling van gedetecteerde genen is voor elke barcode, wat belangrijk is voor de integriteit van de dataset en de stroomafwaartse analyse van tijdpunten voor wondgenezing. Dit cijfer komt overeen met stap 2.6.11. Klik hier om deze figuur te downloaden.

Aanvullende figuur 2: Spreidingsdiagrammen die laten zien dat er een aantal cellen is met een grote mitochondriale inhoud, die correleert met een laag RNA-gehalte --- dit dode of stervende cellen zijn. Dit cijfer komt overeen met stap 2.10. Klik hier om deze figuur te downloaden.

Aanvullende figuur 3: Spreidingsdiagrammen die laten zien dat de verdeling van gedetecteerde genen en het percentage mitochondriaal RNA per cel nu normaler is, wat de weg vrijmaakt voor robuuste stroomafwaartse analyses. Dit cijfer komt overeen met stap 2.12. Klik hier om deze figuur te downloaden.

Aanvullende figuur 4: Vioolgrafiek die laat zien dat er een aantal cellen zijn met een relatief hoge doubletscore, en dat 0,25 een natuurlijke grens lijkt te zijn, waarboven er een populatie van waarschijnlijke doubletten is. Dit cijfer komt overeen met stap 2.15. Klik hier om deze figuur te downloaden.

Aanvullende figuur 5: Ellebooggrafiek die laat zien dat veel van de belangrijkste variatie plaatsvindt binnen de eerste 13 dimensies. Dit cijfer komt overeen met stap 3.2. Klik hier om deze figuur te downloaden.

Aanvullende figuur 6: Puntdiagram die het hoge expressieniveau van de topcelmarkergenen alleen in hun respectievelijke Seurat-clusters bevestigt. Dit cijfer komt overeen met stap 3.17. Klik hier om deze figuur te downloaden.

Aanvullende figuur 7: UMAP-plot met de lokalisatie van annotaties van het wondtijdsverloop in de dataset voor wondgenezing. Dit cijfer komt overeen met stap 3.20. Klik hier om deze figuur te downloaden.

Aanvullende figuur 8: Grafiek met het relatieve aantal DPW-cellen in elke hoofdcategorie van het celtype. Dit cijfer komt overeen met stap 3.22. Klik hier om deze figuur te downloaden.

Aanvullende figuur 9: Ellebooggrafiek die laat zien dat veel van de belangrijkste variatie in de fibroblastdataset plaatsvindt binnen de eerste 9 dimensies. Dit cijfer komt overeen met stap 4.2. Klik hier om deze figuur te downloaden.

Aanvullende figuur 10: UMAP-plot met fibroblasten in de dataset die overal zijn verdeeld volgens hun DPW-annotatie. Dit cijfer komt overeen met stap 4.6. Klik hier om deze figuur te downloaden.

Aanvullende figuur 11: Puntdiagram die de hoge expressie van fibroblastsubtypemarkers bevestigt, meestal in het oorspronkelijke fibroblastcluster. Dit cijfer komt overeen met stap 4.11. Klik hier om deze figuur te downloaden.

Aanvullende figuur 12: Grafiek met het relatieve aantal fibroblastsubtypes in elke DPW-categorie. Dit cijfer komt overeen met stap 4.12. Klik hier om deze figuur te downloaden.

Aanvullende figuur 13: Grafiek met het relatieve aantal fibroblasten in DPW in elke categorie van het fibroblastsubtype. Dit cijfer komt overeen met stap 4.13. Klik hier om deze figuur te downloaden.

Aanvullende figuur 14: Spreidingsdiagrammen met de sterkte van inkomende (y-as) en uitgaande (x-as) interacties voor de belangrijkste celtypen op dag 1 (D1, links) en dag 14 (D14, rechts) tijdstippen. Dit cijfer komt overeen met stap 6.4. Klik hier om deze figuur te downloaden.

Aanvullende figuur 15: Cirkeldiagrammen die de afgeleide collageenroute signaleringsinteracties tussen alle celtypen in elke DPW-categorie weergeven. Dit cijfer komt overeen met stap 6.7. Klik hier om deze figuur te downloaden.

Aanvullende figuur 16: Akkoorddiagrammen die de afgeleide collageenroute signaleringsinteracties tussen alle celtypen in elke DPW-categorie tonen. Dit cijfer komt overeen met stap 6.8. Klik hier om deze figuur te downloaden.

Aanvullende figuur 17: Akkoorddiagrammen die de afgeleide collageenroute tonen die interacties met fibroblasten signaleert als broncellen in elke DPW-categorie. Dit cijfer komt overeen met stap 6.9. Klik hier om deze figuur te downloaden.

Aanvullende figuur 18: Bubble plots die de afgeleide bijdragen van elk ligand-receptorpaar in de collageenroute signaleren met fibroblasten als broncellen in elke DPW-categorie. Dit cijfer komt overeen met stap 6.10.1. Klik hier om deze figuur te downloaden.

Aanvullende figuur 19: Akkoorddiagrammen die de afgeleide bijdragen van elk ligand-receptorpaar in de collageenroute signaleren met fibroblasten als broncellen in elke DPW-categorie. Dit cijfer komt overeen met stap 6.10.2. Klik hier om deze figuur te downloaden.

Aanvullende figuur 20: Akkoorddiagrammen met de afgeleide Col1a1-Cd44 ligand-receptorinteracties tussen alle celtypen in elke DPW-categorie. Dit cijfer komt overeen met stap 6.12. Klik hier om deze figuur te downloaden.

Aanvullende figuur 21: Staafdiagrammen die het aantal (links) en de sterkte (rechts) van afgeleide interacties in wonden op dag 1 en dag 14 weergeven. Dit cijfer komt overeen met stap 6.14. Klik hier om deze figuur te downloaden.

Aanvullende figuur 22: Cirkeldiagram met de differentiële cel-celinteractiesterktes tussen elk celtype terwijl de wond overgaat van dag 1 (blauw) naar dag 14 (rood) DPW. Dit cijfer komt overeen met stap 6.15. Klik hier om deze figuur te downloaden.

Aanvullende figuur 23: Heatmap met de differentiële cel-celinteractiesterktes tussen elk celtype terwijl de wond overgaat van dag 1 (blauw) naar dag 14 (rood) DPW. Dit cijfer komt overeen met stap 6.16. Klik hier om deze figuur te downloaden.

Aanvullende figuur 24: Rangschikkingsdiagram met de relatieve bijdragen van individuele routes aan cel-celinteracties tussen fibroblasten en andere celtypen op dag 1 versus dag 14 DPW. Dit cijfer komt overeen met stap 6.17. Klik hier om deze figuur te downloaden.

Aanvullende figuur 25: Bubble plots die de relatieve bijdragen van individuele ligand-receptorparen in de collageensignaleringsroute met fibroblasten als broncellen op dag 1 versus dag 14 DPW tonen. Dit cijfer komt overeen met stap 6.18. Klik hier om deze figuur te downloaden.

Aanvullende figuur 26: UMAP-grafieken die de verdeling van Seurat-clusters (links) en batchnummers (rechts) weergeven vóór gegevensintegratie. Dit cijfer komt overeen met stap 7.5. Klik hier om deze figuur te downloaden.

Aanvullende figuur 27: UMAP-grafieken die de verdeling van Seurat-clusters (links) en batchnummers (rechts) weergeven na gegevensintegratie. Dit cijfer komt overeen met stap 7.9. Klik hier om deze figuur te downloaden.

Aanvullend bestand 1: JoVE_Rscript.R: Hoofdscriptbestand van de R-code, dat alle stappen en uitleg bevat die voor alle delen van het protocol worden beschreven. Klik hier om dit bestand te downloaden.

Aanvullend dossier 2: JoVE_PhaseSpecificGenes.txt. Door tabs gescheiden tekstbestand, dat de lijsten bevat met genen die in stap 5.1 van het protocol zijn geladen. Klik hier om dit bestand te downloaden.

Aanvullend dossier 3: JoVE_Rscript_b3.R. Aanvullend R-codescriptbestand, dat alle stappen en uitleg bevat die nodig zijn om batch #3 van de dataset te analyseren voor gebruik in stap 7.1 van het protocol. Klik hier om dit bestand te downloaden.

Aanvullende tabel 1: JoVE_DEGs_cellMarkers.xlsx. Excel-bestand, dat de volledige uitvoer bevat van gerangschikte differentieel tot expressie gebrachte genen die zijn gebruikt in stap 3.10 van het protocol. Klik hier om deze tabel te downloaden.

Aanvullende tabel 2: Top 5 opgereguleerde en tot expressie gebrachte genen voor elke seurat cluster. Klik hier om deze tabel te downloaden.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

In dit protocol wordt RStudio gebruikt om voorgeschreven coderegels uit te voeren die een basisanalyse van een complexe single-cell dataset mogelijk maken met behulp van Seurat. Er worden verschillende methoden gepresenteerd die relevant zijn voor onderzoek naar wondgenezing, waaronder de installatie van de R-coderingsomgeving, het downloaden van een eerder gepubliceerde dataset voor wondgenezing met één cel, het uitvoeren van kritieke kwaliteitscontrolestappen en standaard workflows voor eencellige analyse, waaronder visualisaties, belangrijke celtype-annotaties, celsubtype-analyses en integratieve analyses met behulp van Seurat, en het uitvoeren van cel-celinteractie-analyses met behulp van CellChat.

De methoden die hierin worden geïntroduceerd, zijn vereenvoudigde vignetten van typische workflows voor analyse van één cel met behulp van R en zijn populaire open-source wetenschappelijke pakketten, Seurat21 en CellChat22. De workflow is inderdaad slechts één voorbeeld van het type analyse dat men kan uitvoeren met een complexe eencellige dataset voor wondgenezing. De mogelijke aanpassingen aan deze methode zijn bijna oneindig, met als enige beperking het specifieke wetenschappelijke onderzoek van de gebruiker. De gebruiker kan bijvoorbeeld enkele van de belangrijkste parameters, zoals celtypen en tijdstippen, wijzigen op basis van de onderzoeksvragen die hij aan deze dataset wil stellen. De auteurs hopen ook dat de gebruiker zich comfortabel genoeg voelt om deze workflow aan te passen aan zijn eigen single-cell dataset die hij interesseert; Er moet echter voorzichtig worden omgegaan met het gebruik van deze workflow om andere datasets te analyseren, aangezien elk experiment technische en monstervoorbereidingsproblemen kan doorgeven aan de gegevens zelf. Daarom is het absoluut noodzakelijk dat de gebruiker alle experimentele details leest en begrijpt voordat hij de resultaten van eerder gepubliceerde en opnieuw geanalyseerde single-cell datasets interpreteert. Het is belangrijk om te onthouden dat bio-informatica-instrumenten een krachtige methode zijn voor de verkenning van biologische processen en het genereren van hypothesen, en dat alle kritische biologische interpretaties van resultaten moeten worden gevalideerd in vervolgexperimenten.

Houd er in het protocol rekening mee dat er grote wijzigingen kunnen worden aangebracht in bepaalde delen van de workflow om andere taken uit te voeren. De details van alle mogelijke combinaties van wijzigingen in de workflow vallen echter buiten het bestek van dit manuscript. De resolutie die wordt gebruikt voor celclustering en de dimensies die worden gebruikt voor UMAP-analyse zijn bijvoorbeeld noodzakelijkerwijs subjectief, en de hier gepresenteerde tools maken zowel grootschalige analyses mogelijk (zoals hier werd aangetoond voor breed gedefinieerde hoofdceltypen) als zeer specifieke analyses die de subclustering van cellen in zeldzamere subpopulaties binnen de grotere dataset met zich mee zouden kunnen brengen. Voor meer informatie over dit aspect van de single-cell analysemethode, en voor details over alle andere parameters die kunnen worden gewijzigd in de single-cell analyse pipeline, verwijzen de auteurs de gebruiker naar de Seurat publicaties21,26 en website (https://satijalab.org/seurat/), waar de auteurs van deze evoluerende tool diepgaande uitleg, vignetten en tutorials geven.

Dit manuscript introduceerde enkele van de meest geciteerde en gebruikte tools in de single-cell transcriptomics-literatuur, namelijk Seurat21 en CellChat22, voor respectievelijk single-cell en cel-cel interactie-analyses. Er bestaan echter andere tools die vergelijkbare functies op een iets andere manier uitvoeren. Voor de analyse van single-cell datasets zijn er Scran27, Scater 28 en de op Python gebaseerde ScanPy29, die verschillende methoden gebruiken voor datasetintegratie25. In dit protocol werd handmatige annotatie van celtypen gedemonstreerd, die afhankelijk is van het oordeel van de gebruiker voor het interpreteren van verrijkingen van clustercelmarkers, maar er bestaan nu verschillende tools die geautomatiseerde classificatie van celtypen mogelijk maken, zoals onder andere SingleR30 en scGate31. Voor analyses van cel-celcommunicatie werd CellChat in dit protocol gedemonstreerd, maar er bestaan andere hulpmiddelen voor het schatten van cel-celcommunicatie, waaronder CellPhoneDB32, Cytotalk33 en andere ligandreceptordatabases die zijn geïmplementeerd binnen het LIANA (LIgand-receptor ANalysis framework) consensuskader34. Alle bio-informaticatools zijn uniek en hebben hun eigen eigenaardigheden en aanpasbare parameters. Daarom is het belangrijk dat de gebruiker de bijbehorende documentatie van elke tool zorgvuldig leest om de nuances ervan te begrijpen voordat hij de output interpreteert die door het gebruik ervan wordt gegenereerd. Ten slotte, welke bio-informaticatools men ook gebruikt, het is van cruciaal belang om te onthouden dat dergelijke tools voortdurend evolueren en dat verschillende versies van de pakketten verschillende outputs kunnen opleveren.

In R is de syntaxis van cruciaal belang, en een verkeerd geplaatste leesteken, aanhalingsteken, haakje of zelfs een letter met een verkeerd hoofdletter zal resulteren in een fout. Daarom is het van vitaal belang dat de gebruiker aandacht besteedt aan details bij het typen van code en vooral voorzichtig is bij het kopiëren van coderegels om deze aan te passen aan nieuwe wetenschappelijke vragen en datasets. Voor het oplossen van de specifieke fouten die men kan tegenkomen, raden de auteurs aan om het foutbericht eenvoudig te kopiëren en plakken in de favoriete webzoekmachine van de gebruiker en door de resultaten van bio-informaticaforums zoals GitHub en Stack Overflow te bladeren, aangezien de meest voorkomende fouten waarschijnlijk al zijn beantwoord door een ervaren ervaren gebruiker. Op sommige forums worden de meest succesvolle antwoorden 'geüpdatet' door andere gebruikers die hebben ontdekt dat de oplossing het beste is voor het probleem. De gebruiker moet oppassen dat hij niet zomaar regels code die hij op internet heeft gevonden, op zijn eigen computer kopieert en plakt (vooral als een oplossing vereist dat hij zijn systeeminstellingen buiten de programmeertaal R moet wijzigen), aangezien de kans bestaat dat dergelijke programma's kwaadaardig zijn. Een opwindende opkomende methode voor het oplossen van coderingsfouten is het gebruik van de krachtige generatieve AI-modellen in grote taal, zoals OpenAI's ChatGPT, Microsoft's Copilot of Google's Gemini. Deze modellen hebben bewezen bijzonder nuttig te zijn voor software-engineering in het algemeen en het oplossen van problemen in het bijzonder. Hiervoor kan de gebruiker hele regels van zijn code kopiëren en plakken nadat hij de chatbot een eenvoudige prompt heeft gegeven over de intentie van de gebruiker voor de code. Het gebruikelijke voorbehoud bestaat dat deze modellen niet onfeilbaar zijn en dat de gebruiker mogelijk meerdere prompts moet proberen om een antwoord te genereren dat geschikt is om het probleem op te lossen.

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

De auteurs hebben geen belangenconflicten te onthullen.

Acknowledgements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Het laboratorium van MS Wietecha ontving financiering van de NIH/NIGMS-subsidie R35-GM154921, de Wound Healing Society Research Grant en de afdeling Orale Biologie van het UIC College of Dentistry.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
Laptop of desktopcomputerN/AN/AMet Windows of MacOS 
RN/AVersie 4.4.1Gratis te downloaden vanaf https://cran.rstudio.com/
RstudioPosit Software, PBCVersie 2024.09.0Gratis te downloaden vanaf https://posit.co/download/rstudio-desktop/
Office ExcelMicrosoftElke versieVoor analyse van tabelgegevens
InternetbrowserN/AN/AVoor navigatie naar websites
R PakkettenRepositoryVersie
devtoolsCRAN2.4.5
readxlCRAN1.4.3
openxlsxCRAN4.2.7.1
tidyverseCRAN2.0.0
scCustomizeCRAN2.1.2
BiocManagerBioconductor1.30.25
NMFBioconductor0.28
ComplexHeatmapBioconductor2.20.0
BiocNeighborsBioconductor1.22.0
SingleCellExperimentBioconductor1.26.0
circlizeBioconductor0.4.16
edgeRBioconductor4.2.1
scDblFinderBioconductor1.18.0
SeuratCRAN5.1.0
CellChatGithub2.1.2

References

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Eming, S. A., Martin, P., Tomic-Canic, M. Wound repair and regeneration: mechanisms, signaling, and translation. Sci Transl Med. 6 (265), 265sr6(2014).
  2. Wietecha, M. S., et al. Phase-specific signatures of wound fibroblasts and matrix patterns define cancer-associated fibroblast subtypes. Matrix Biol. 119, 19-56 (2023).
  3. Rodrigues, M., Kosaric, N., Bonham, C. A., Gurtner, G. C. Wound healing: a cellular perspective. Physiol Rev. 99 (1), 665-706 (2019).
  4. Chen, L., Mirza, R., Kwon, Y., DiPietro, L. A., Koh, T. J. The murine excisional wound model: contraction revisited. Wound Repair Regen. 23 (6), 874-877 (2015).
  5. Rhea, L., Dunnwald, M. Murine excisional wound healing model and histological morphometric wound analysis. J Vis Exp. (162), e61616(2020).
  6. Fischer, K. S., et al. Protocol for the splinted, human-like excisional wound model in mice. Bio-Protocol. 13 (3), e4606(2023).
  7. Iglesias-Bartolome, R., et al. Transcriptional signature primes human oral mucosa for rapid wound healing. Sci Transl Med. 10 (451), aap8798(2018).
  8. Chen, L., Arbieva, Z. H., Guo, S., Marucha, P. T., Mustoe, T. A., DiPietro, L. A. Positional differences in the wound transcriptome of skin and oral mucosa. BMC Genomics. 11, 471(2010).
  9. Leonardo, T. R., et al. Transcriptional changes in human palate and skin healing. Wound Repair. 31 (2), 156-170 (2023).
  10. Rognoni, E., et al. Fibroblast state switching orchestrates dermal maturation and wound healing. Mol Syst Biol. 14 (8), e8174(2018).
  11. Bergmeier, V., et al. Identification of a myofibroblast-specific expression signature in skin wounds. Matrix Biol. 65, 59-74 (2018).
  12. Plikus, M. V., et al. Regeneration of fat cells from myofibroblasts during wound healing. Science. 355 (6326), 748-752 (2017).
  13. Shook, B. A., et al. Myofibroblast proliferation and heterogeneity are supported by macrophages during skin repair. Science. 362 (6417), aar2971(2018).
  14. Rinkevich, Y., et al. Skin fibrosis. Identification and isolation of a dermal lineage with intrinsic fibrogenic potential. Science. 348 (6232), aaa2151(2015).
  15. Guerrero-Juarez, C. F., et al. Single-cell analysis reveals fibroblast heterogeneity and myeloid-derived adipocyte progenitors in murine skin wounds. Nat Commun. 10 (1), 650(2019).
  16. Gay, D., et al. Phagocytosis of Wnt inhibitor SFRP4 by late wound macrophages drives chronic Wnt activity for fibrotic skin healing. Sci Adv. 6 (12), eaay3704(2020).
  17. Haensel, D., et al. Defining epidermal basal cell states during skin homeostasis and wound healing using single-cell transcriptomics. Cell Rep. 30 (11), 3932-3947.e6 (2020).
  18. Phan, Q. M., Sinha, S., Biernaskie, J., Driskell, R. R. Single-cell transcriptomic analysis of small and large wounds reveals the distinct spatial organization of regenerative fibroblasts. Exp Dermatol. 30 (1), 92-101 (2021).
  19. Foster, D. S., et al. Integrated spatial multiomics reveals fibroblast fate during tissue repair. Proc Natl Acad Sci U S A. 118 (41), e2110025118(2021).
  20. Hu, K. H., et al. Transcriptional space-time mapping identifies concerted immune and stromal cell patterns and gene programs in wound healing and cancer. Cell Stem Cell. 30 (6), 885-903.e10 (2023).
  21. Hao, Y., et al. Dictionary learning for integrative, multimodal and scalable single-cell analysis. Nat Biotechnol. 42 (2), 293-304 (2024).
  22. Jin, S., et al. Inference and analysis of cell-cell communication using CellChat. Nat Commun. 12 (1), 1088(2021).
  23. Germain, P. -L., Lun, A., Garcia Meixide, C., Macnair, W., Robinson, M. D. Doublet identification in single-cell sequencing data using scDblFinder. F1000Research. 10, 979(2021).
  24. Jin, S., Plikus, M. V., Nie, Q. CellChat for systematic analysis of cell-cell communication from single-cell transcriptomics. Nat Protoc. 20 (1), 180-219 (2024).
  25. Luecken, M. D., et al. Benchmarking atlas-level data integration in single-cell genomics. Nat Methods. 19 (1), 41-50 (2022).
  26. Hao, Y., et al. Integrated analysis of multimodal single-cell data. Cell. 184 (13), 3573-3587.e29 (2021).
  27. Lun, A. T. L., McCarthy, D. J., Marioni, J. C. A step-by-step workflow for low-level analysis of single-cell RNA-seq data with Bioconductor. F1000Research. 5, 2122(2016).
  28. McCarthy, D. J., Campbell, K. R., Lun, A. T. L., Wills, Q. F. Scater: pre-processing, quality control, normalization and visualization of single-cell RNA-seq data in R. Bioinformatics (Oxford, England). 33 (8), 1179-1186 (2017).
  29. Wolf, F. A., Angerer, P., Theis, F. J. SCANPY: large-scale single-cell gene expression data analysis. Genome Biol. 19 (1), 15(2018).
  30. Aran, D., et al. Reference-based analysis of lung single-cell sequencing reveals a transitional profibrotic macrophage. Nat Immunol. 20 (2), 163-172 (2019).
  31. Andreatta, M., Berenstein, A. J., Carmona, S. J. scGate: marker-based purification of cell types from heterogeneous single-cell RNA-seq datasets. Bioinformatics. 38 (9), 2642-2644 (2022).
  32. Efremova, M., Vento-Tormo, M., Teichmann, S. A., Vento-Tormo, R. CellPhoneDB: inferring cell-cell communication from combined expression of multi-subunit ligand-receptor complexes. Nat Protoc. 15 (4), 1484-1506 (2020).
  33. Hu, Y., Peng, T., Gao, L., Tan, K. CytoTalk: de novo construction of signal transduction networks using single-cell transcriptomic data. Sci Adv. 7 (16), eabf1356(2021).
  34. Dimitrov, D., et al. Comparison of methods and resources for cell-cell communication inference from single-cell RNA-Seq data. Nat Commun. 13 (1), 3224(2022).

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

Single Cell TranscriptomicsWound HealingSeurat AnalysisCellChat WorkflowMouse Skin DatasetCell Type AnnotationUMAP VisualizationDifferential Gene ExpressionCell CommunicationBioinformatics Workflow

Related Articles