Method Article

שימוש ב-R, Seurat ו-CellChat כדי לנתח מערך נתונים של טרנסקריפטומיקה של תא בודד של ריפוי פצעי עור של עכבר

DOI:

10.3791/67266

August 1st, 2025

In This Article

Summary

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

כאן, אנו מציגים זרימת עבודה ויזואלית שלב אחר שלב לניתוח מערך נתונים של תעתיק מהלך זמן של תא יחיד של ריפוי פצעי עור עכבר באמצעות R. הפרוטוקול כולל צינור סטנדרטי להורדת מערכי נתונים, בקרת איכות, הדמיות והערות סוג תא באמצעות Seurat, וניתוח אינטראקציה בין תא לתא באמצעות CellChat.

Abstract

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

תהליך ריפוי הפצעים מווסת על ידי אינטראקציות מורכבות בין סוגי תאים שונים על פני מרחב וזמן. באמצעות פרופיל של תאים בודדים בסביבתם המורכבת, שיטות טרנסקריפטומיקה של תא בודד מאפשרות לחקור הטרוגניות תאית, רשתות תקשורת תאיות ואינטראקציות תא-תא המעורבות בתהליך ריפוי הפצע. עם זאת, כלי ניתוח תאים בודדים רבים מופעלים בסביבת קידוד ממוחשבת, והשימוש הנרחב יותר בהם על ידי מדעני ריפוי פצעים מסוכל על ידי היעדר מומחיות בביואינפורמטיקה. לכן, מוצגת זרימת עבודה שלב אחר שלב המראה כיצד להשתמש בסביבת קידוד גרפית הנקראת RStudio כדי לבצע ניתוח בסיסי של תא בודד של מערך נתונים לריפוי פצעי עור כריתה זמנית של עכבר. פרוטוקול חזותי ומודרך זה יאפשר למדענים ללא רקע ביואינפורמטי להוריד מערך נתונים של ריפוי פצעים שפורסם בעבר, לבצע שלבי בקרת איכות קריטיים, להריץ זרימת עבודה סטנדרטית של ניתוח תא בודד כולל הדמיות של מערכי נתונים והערות סוג תא באמצעות Seurat, להריץ ניתוחי תת-סוג של תאים, להריץ ניתוחי ניקוד מודולים, להריץ ניתוחי אינטראקציה בין תאים באמצעות CellChat, ולבצע ניתוחים אינטגרטיביים של מערכי נתונים מרובים באמצעות Seurat. הסברים נרטיביים ניתנים לכל שלב בפרוטוקול ותוצאות גרפיות מכל שורת קוד מוצגות כדי להדריך את המשתמש בבטחה בזרימת העבודה. מטרת ההקדמה החזותית הזו לצינור ניתוח של תא בודד היא לאפשר ליותר מדעני ריפוי פצעים להשתמש בכלים ביואינפורמטיים ישירות במעבדות שלהם על מנת להקל על ניתוחים מעמיקים יותר של מערכי הנתונים של התא הבודד שלהם, כמו גם ניתוחים מחדש נרחבים יותר של מערכי נתונים של תא בודד שפורסמו בעבר.

Introduction

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

ריפוי פצעים הוא אחד התהליכים המורכבים ביותר בביולוגיה של יונקים, והוא כרוך בספקטרום של שלושה שלבי ריפוי: דלקתי, פרוליפרטיבי ורזולוציה 1,2. שלבי ריפוי אלה מסווגים באופן כללי את הפעולות המתואמות של עשרות סוגי תאים ומאות מתוצריהם המולקולריים על פני מרחב וזמן של תיקון פצעים3. כמה עשורים של מחקרים היסטולוגיים ומולקולריים המבוססים על דגימת רקמת פצע לאורך זמן הריפוי הבהירו את הדפוסים התאיים הכוללים של תיקון רקמות3, במיוחד במודלים עכבריים הניתנים לשחזור של ריפוי פצעי עור כריתה 4,5,6. רק בשני העשורים האחרונים ניתן היה להעריך באופן מלא יותר את המורכבות של ריפוי פצעים, החל מהופעת אנליזות טרנסקריפטומיות בתפוקה גבוהה של פצעים בקנה מידה של רקמות בתפזורת 7,8,9 ותאים 10,11,12,13,14. לאחרונה, מספר מחקרים ערכו פרופיל שעתוק של פצעי עור ברמת התא הבודד, זיהו תת-סוגים חדשים של תאי פצע והראו כיצד הם עשויים לקיים אינטראקציה זה עם זה במהלך הריפוי 15,16,17,18,19,20. הו ועמיתיו השתמשו בגישת ריצוף RNA מרחבית חד-תאית חדשנית כדי לאפיין פצעי עור לאורך מהלך הריפוי במספר מרחקים רדיאליים ממרכז הפצע, מה שחשף 'תנועות' בין-תאיות ומולקולריות חדשות על פני מרחב וזמן20. מחקרים כאלה חושפים את המורכבות של ריפוי פצעים בפירוט חסר תקדים, והם מתחילים לצייר תמונה של הטרוגניות תאית ומולקולרית עצומה.

ההתקדמות העיקרית האחרונה בשיטות ניתוח ביואינפורמטיקה מאפשרת להבין ביולוגית את מערכי הנתונים המולטי-אומיים המורכבים הנוצרים בתחום מחקר ריפוי הפצעים. חבילות ניתוח של תאים בודדים כמו Seurat מספקות כלים לניתוח ושילוב חזק של מערכי נתונים, כולל סיווג סוגי תאים ברקמות מורכבות כגון פצעים21. לפירוש במורד הזרם של נתונים של תא בודד, כלים כמו CellChat משמשים לזיהוי תוכניות אינטראקציה משוערות בין תא לתא שעשויות להסביר כיצד תאים מתאמים לתיקון פצעים22. בעוד שכלים אלה מתועדים היטב ומצוטטים היטב, הם חייבים להיות מופעלים בסביבת קידוד ממוחשבת כגון R, שפת תכנות סטטיסטית וגרפית המשמשת לרוב בתחומי הביואינפורמטיקה של גנומיקה ותעתיק. בעוד שביולוגים וקלינאים בתחום ריפוי הפצעים משתמשים יותר ויותר בגישות של תא בודד לחקר תיקון רקמות, למעטים יש את ההכשרה הביואינפורמטית הנדרשת כדי להשתמש בכלים כמו Seurat ו-CellChat ישירות במעבדות שלהם. מחסום כזה בשימוש בכלים ביואינפורמטיים אלה לא רק מונע ממדענים לנתח לעומק את מערכי הנתונים שלהם ללא עזרת ביואינפורמטיקאים, אלא הוא גם מונע ממדענים לנתח מחדש באופן אמין את עושר הנתונים של תא בודד שכבר פורסם על ידי קבוצות אחרות.

לכן, מוצג כאן תהליך עבודה שלב אחר שלב כדי לאפשר למדענים ללא רקע ביואינפורמטי לנתח מערך נתונים של ריפוי פצעים חד-תאיים שפורסם בעבר וזמין לציבור20. הפרוטוקול משתמש בסביבת הקידוד הגרפית R הנפוצה והחינמית הנקראת RStudio, והוא מדגים כיצד לנווט בסביבה זו כדי להריץ שורות קוד מוגדרות המאפשרות ניתוח בסיסי של מערך נתונים מורכב של תא יחיד באמצעות Seurat ו-CellChat. במסגרת פרוטוקול זה, מוצגות שבע השיטות העיקריות הרלוונטיות למחקר ריפוי פצעים, כולל: 1) התקנת סביבת קידוד, 2) הורדת מערך הנתונים ושלבי בקרת איכות קריטיים, 3) זרימות עבודה של ניתוח תא בודד כולל הדמיות והערות סוג תא, 4) ניתוחי תת-סוג תא, 5) ניתוחי ניקוד מודול, 6) ניתוחי אינטראקציה בין תא לתא, ו-7) ניתוחים אינטגרטיביים של מערכי נתונים מרובים. בתוך כל שיטה, קוד בפועל מסופק למשתמש כדי לרוץ זה לצד זה עם הפרוטוקול, ותוצאות גרפיות בפועל מכל שורת קוד מוצגות כדי להנחות את המשתמש בזרימת העבודה. המטרה העיקרית של מבוא מודרך וחזותי זה ל-RStudio וזרימת עבודה בסיסית של ניתוח תא בודד היא לאפשר ליותר מדעני ריפוי פצעים להשתמש בכלים רבי עוצמה אלה ישירות על מנת לאפשר התקדמות מהירה יותר בתחום המחקר.

Protocol

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

הערה: בתהליכי העבודה הבאים המפרטים שבע שיטות ביואינפורמטיקה, כל שלבי הפרוטוקולים מלווים בבלוקי הקוד המתאימים להם שיש להריץ ישירות בממשק RStudio של המשתמש עצמו בסדר שבו הם רשומים. כדי להפוך את הפרוטוקול הזה לידידותי למשתמש ככל האפשר, נכלל קובץ סקריפט R (קובץ משלים 1: JoVE_Rscript.R), אותו ניתן לטעון ישירות לסשן RStudio של המשתמש, כך שניתן פשוט להריץ כל שורת קוד. זה מונע מהמשתמש להקליד או להעתיק ולהדביק את הקוד ממסמך הפרוטוקול, מה שעלול להציג שגיאות. כל הוראות הפרוטוקול כלולות גם בקובץ הסקריפט R בצורה של הערות, המסומנות על ידי סמל האשטאג '#' בתחילת כל שורת תגובה.

1. התקנת R, RStudio וחבילות R הנדרשות לזרימת העבודה של ניתוח תא יחיד

  1. הורד והתקן את R (גרסה 4.4.1) למחשב. השתמש בקישור המתאים למערכת ההפעלה של המחשב.
    1. אם אתה משתמש במחשב עם Microsoft Windows, השתמש בקישור הבא: https://cran.rstudio.com/bin/windows/base/
    2. אם אתה משתמש במחשב עם MacOS, השתמש בקישור הבא: https://cran.rstudio.com/bin/macosx/
  2. התקן את הגרסה העדכנית ביותר של RStudio במחשב. לחץ על הקישור הבא ופעל לפי ההוראות:
    https://www.rstudio.com/products/rstudio/download/#download
  3. התקן את Rtools (גרסה 4.4), שתאפשר ל-R להדר חבילות מסוימות. לחץ על הקישור הבא ופעל לפי ההוראות:
    1. אם אתה משתמש ב- Windows, השתמש בקישור זה: https://cran.rstudio.com/bin/windows/Rtools/
    2. אם אתה משתמש ב-MacOS, השתמש בקישור זה:
      https://mac.r-project.org/tools/
  4. הגדר את ספריית העבודה המקומית; זוהי התיקיה במחשב שממנה כל הקבצים ייטענו ויישמרו בה. הגדר את ספריית העבודה על-ידי בחירה באפשרות Session בשורת התפריטים של RStudio ולחיצה על Set Working Directory > Choose Directory ובחירת התיקייה הרצויה.
    1. אם אתה משתמש במחשב Windows, השתמש בפקודה הבאה כדי להגדיר את ספריית העבודה. שנה את [Directory] בשורת הקוד הבאה למבנה הספרייה בפועל. שים לב שמפריד הספריות ב-R הוא התו "/"
      setwd("C:/[Directory]")
    2. אם אתה משתמש במחשב MacOS, הפקודה הבאה תגדיר גם את ספריית העבודה. שנה את [Directory] בשורת הקוד הבאה למבנה הספרייה בפועל. שים לב שמפריד הספריות ב-R הוא התו "/"
      setwd("~/[Directory]")
    3. בכל שלב במהלך הפעלת R, בדוק את ספריית העבודה באמצעות שורת הקוד הבאה:
      getwd()
    4. ב-RStudio, חקור חזותית את מבנה ספריית העבודה, כולל כל הקבצים והתיקיות הכלולים בו, בחלון הימני בכרטיסייה קבצים . כדי לנווט בסייר הקבצים של RStudio לספריית העבודה, לחץ על סמל גלגל השיניים -> Go To Working Directory.
  5. התקן את החבילות הבאות ממאגר החבילות R CRAN, שהן יחסי תלות הכרחיים עבור הפרוטוקול. כדי להתקין חבילות אלה, הפעל את הפקודות הבאות.
    install.packages("devtools")
    install.packages("readxl")
    install.packages("openxlsx")
    install.packages("tidyverse")
    install.packages("scCustomize")

    הערה: במהלך ההתקנה של חבילות R, זה נורמלי שחלונות שונים יופיעו וייעלמו. אם מופיע חלון המבקש להדר חבילה, לחץ על כן. אם מופיע חלון המבקש להפעיל מחדש את R לפני התקנת החבילה, לחץ על לא.
  6. התקן את החבילות הבאות ממאגר חבילות R שנאסף Bioconductor
    (https://bioconductor.org/), שהם יחסי תלות הכרחיים לפרוטוקול. כדי להתקין חבילות אלה, הפעל את הפקודות הבאות.
    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. התקן את החבילות הבאות, הנדרשות לזרימת העבודה המתוארת בכתב יד זה.
    install.packages("Seurat")
    devtools::install_github("jinworks/CellChat")
  8. טען בכל חבילה כדי לאשר שההתקנות הצליחו. במקרה שאחת מהחבילות גורמת לשגיאת "החבילה לא נמצאה", התקן אותה מחדש באמצעות הקוד המתאים למעלה.
    library(readxl)
    library(openxlsx)
    library(tidyverse)
    library(scCustomize)
    library(edgeR)
    library(scDblFinder)
    library(Seurat)
    library(CellChat)

2. טעינה במערך נתונים לריפוי פצעים של תא בודד וביצוע שלבי בקרת איכות

הערה: עבור זרימת עבודה ביואינפורמטית זו, נערך ניתוח מחדש של ניסוי ריפוי פצעי עור חד-תאיים מרחבי-זמני שפורסםבעבר 20. קבצי מערך הנתונים מאוחסנים במאגר NCBI Gene Expression Omnibus (GEO) (https://www.ncbi.nlm.nih.gov/geo/).

  1. נווט אל קבצי מערך הנתונים מ-GEO באמצעות מספר הכניסה GSE204777. השתמש בקישור הבא וסקור את תכנון הניסוי של המחקר: https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE204777
  2. בתוך דף מאגר GEO, ישנן חמש קבוצות בודדות של נתונים המתקבלות מחמישה נתיבי ריצוף. לחץ על מערך הנתונים הראשון, שכותרתו GSM6190913. להלן קישור ישיר לדוגמא: https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSM6190913
  3. גלול מטה לתחתית הדף והורד את שלושת הקבצים הבאים, באמצעות קישורי FTP או HTML . בתוך סייר הקבצים של המחשב, העבר את שלושת הקבצים הללו לספרייה בשם b1. ודא שהתיקיה b1 ממוקמת בתוך ספריית העבודה שהוגדרה בשלב 1.4.
    שם הקובץ: GSM6190913_b1_barcodes.tsv.gz / גודל הקובץ: 18.5 Mb
    שם הקובץ: GSM6190913_b1_features.tsv.gz / גודל הקובץ: 254.1 Kb
    שם הקובץ: GSM6190913_b1_matrix.mtx.gz / גודל הקובץ: 151.2 Mb
  4. קבל את פרטי הספרייה עבור קבצי הרצף של תא בודד שהורדו בשלב 2.3.
    b1_data_dir <- file.path(getwd(), "b1")
  5. טען בקבצי הרצף של תא בודד. הפרמטר gene.column מציין את שמות הגן/התכונה שבהם נעשה שימוש. במקרה זה, השתמש ב-gene.column = 2 עבור סמלי גנים (gene.column = 1 הוא עבור שמות גנים של אנסמבל).
    b1 <- Read10X_GEO(data_dir = b1_data_dir, gene.column = 2)
    הערה: לרוב מערכי הנתונים של תא בודד אין נתונים מרובים נוספים, כך שלקבצי 10x שנוצרו באמצעות שלב זה לא יהיו שכבות מרובות. עבור מערך הנתונים המולבה הנוכחי, המשך לשלב 2.6. עבור מערכי נתונים ללא ריבוב נתונים, דלג לשלב 2.7.
  6. דה-מולטיפלקס את מערך הנתונים של תא יחיד באמצעות ברקודים מרחביים-זמניים.
    1. עבור מערך הנתונים העובד, הפרד את ביטוי הגנים ונתוני HTO (ריבוב).
      dataset_rna_counts <- b1$GSM6190913_b1_$`Gene Expression`
      ​dataset_barcodes <- b1$GSM6190913_b1_$`Antibody Capture`
    2. צור אובייקט Seurat באמצעות נתוני ביטוי הגנים, תוך סינון מיידי של גנים המתבטאים בפחות מ-5 תאים ותאים עם פחות מ-200 גנים שזוהו.
      dataset <- CreateSeuratObject(counts = dataset_rna_counts, min.cells = 5, min.features = 200)
    3. צור מערך נתונים של ביטוי גנים כשכבה וצור רשימה של תאים וברקודים המשותפים לשתי הבדיקות.
      dataset_rna_counts2 <- LayerData(dataset, data = "RNA")
      ​dataset_joint.barcodes <- intersect(colnames(dataset_rna_counts2), colnames(dataset_barcodes))
    4. תת-קבוצה של ביטוי גנים וספירת HTO על ידי ברקודים של תאים משותפים.
      dataset_rna_counts2 <- dataset_rna_counts2[, dataset_joint.barcodes]
      ​dataset_barcodes2 <- as.matrix(dataset_barcodes[, dataset_joint.barcodes])
    5. ודא של-HTO יש את שמות הברקוד הצפויים.
      ​rownames(dataset_barcodes2)
    6. צור מבחן חדש לאחסון נתוני ברקוד והוסף מבחן זה לאובייקט Seurat שנוצר קודם לכן.
      dataset_barcode_assay <- CreateAssayObject(counts = dataset_barcodes2)
      ​dataset[["barcodes"]] <- dataset_barcode_assay
    7. ודא שהאובייקט מכיל כעת בדיקות מרובות.
      DefaultAssay(dataset)
    8. נרמל נתוני ברקוד ובצע דה-מולטיפלקס באמצעות הפונקציה HTODemux. שיטה זו מתוארת בפירוט בוויניט Seurat הבא: https://satijalab.org/seurat/articles/hashing_vignette
      ​dataset <- HTODemux(dataset, assay = "barcodes", positive.quantile = 0.99)
    9. קבץ תאים על סמך תוצאות סיווג גלובלי והסר תאים ללא סיווג ברקוד.
      Idents(dataset) <- "barcodes_classification.global"
      ​dataset <- subset(dataset, idents = "Negative", invert = TRUE)
    10. קבץ תאים על סמך אות ה- HTO המרבי.
      Idents(dataset) <- "barcodes_maxID"
    11. דמיין את התפלגות הגנים שזוהו בתאים לפי הברקודים המרובים שלהם (איור משלים 1).
      VlnPlot(dataset, features = "nFeature_RNA", pt.size = 0.1, log = TRUE)
    12. שנו את שמות הברקודים להקצאות זמן הפציעה (ימים לאחר הפציעה) והמרחב (2-8 מ"מ) (שנלקחו מכתב היד המקורי) והקצו אותם למשתנה מטא-נתונים חדש שנקרא 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. עבור מערכי נתונים ללא ריבוב נתונים: צור אובייקט Seurat, תוך סינון מיידי של גנים המתבטאים בפחות מ-5 תאים ותאים עם פחות מ-200 גנים שזוהו.
    dataset <- CreateSeuratObject(counts = b1, min.cells = 5, min.features = 200)
  8. עבור לניתוח מבחן ביטוי הגנים של מערך הנתונים.
    DefaultAssay(dataset) <- "RNA"
    Idents(dataset) <- "data"
  9. כשלב חשוב לבקרת איכות, חשב את אחוז הגנים המיטוכונדריאלים בכל תא והקצה אותו כמשתנה מטא נתונים. שיטה זו מתוארת בפירוט בוויניט Seurat הבא: https://satijalab.org/seurat/articles/pbmc3k_tutorial#qc-and-selecting-cells-for-further-analysis
    dataset[["percent.mt"]] <- PercentageFeatureSet(dataset, pattern = "^mt-")
  10. דמיין את התפלגות הגנים שזוהו, מספרי הרנ"א ואחוז המיטוכונדריה בכל התאים (איור משלים 2).
    plot1 <- FeatureScatter(dataset, feature1 = "nCount_RNA", feature2 = "percent.mt")
    plot2 <- FeatureScatter(dataset, feature1 = "nFeature_RNA", feature2 = " percent.mt ")
    plot1 + plot2
  11. ישנם מספר תאים עם תכולת מיטוכונדריה גדולה, אשר מתואמת עם ספירת RNA נמוכה; אלה תאים מתים או גוססים. הסר את התאים באיכות נמוכה ממערך הנתונים באמצעות חתך הוגן. במקרה זה, השתמש בערכי מערך הנתונים המקורי המתואר במחקר20 שפורסם בעבר, בו מוסרים תאים עם יותר מ -25% גנים מיטוכונדריאליים.
    dataset <- subset(dataset, subset = nFeature_RNA > 200 & percent.mt < 25)
  12. דמיין את התפלגות הגנים שזוהו, מספרי הרנ"א ואחוז המיטוכונדריה בכל התאים לאחר הסרת תאים באיכות נמוכה (איור משלים 3).
    plot1 <- FeatureScatter(dataset, feature1 = "nCount_RNA", feature2 = "percent.mt")
    plot2 <- FeatureScatter(dataset, feature1 = "nFeature_RNA", feature2 = " percent.mt ")
    plot1 + plot2
  13. כשלב חשוב נוסף של בקרת איכות, זיהוי כפילויות סבירות במערך הנתונים. מדובר בתאים שחוברו במהלך ריצוף טיפות ובכך יגרמו לביטויי גנים שאינם ברמת התא הבודד. כדי להתמודד עם בעיה זו, פותחו מספר כלים. חשוב לציין שכל כלי מניח הנחות מסוימות לגבי נתונים של תא בודד, ולכן חשוב שהמשתמש יקרא את כל התיעוד הרלוונטי לפני השימוש בכלי אחד. בתהליך עבודה זה, יישם שיטה הנקראת scDblFinder23. שימו לב ששיטה זו משתמשת באלגוריתם שמטיל שיעור כפול צפוי קבוע. השתמש בפקודות הבאות כדי להפעיל את קו הצינור scDblFinder.
    DefaultAssay(dataset) <- "RNA"
    sce <- scDblFinder(GetAssayData(dataset, assay="RNA", slot="counts"), samples=Idents(dataset))

    הערה: מערכי נתונים מרובים של תא יחיד כמו זה עשויים גם להיות מסוננים לכפולות על ידי הסרת תאים המבטאים ברקודים מרובים. זרימת עבודה זו לא הדגימה שיטה זו מכיוון שלרוב מערכי הנתונים של תא בודד אין תכונה ייחודית זו. במקום זאת, צינור הניתן להכללה יותר לסינון כפולות מוצג באמצעות שיטת scDblFinder.
  14. הקצה את הניקוד הכפול למשתנה מטה-נתונים חדש.
    dataset$scDblFinder.score <- sce$scDblFinder.score
  15. דמיין את התפלגות הציון הכפול בכל התאים (איור משלים 4).
    VlnPlot(dataset, features = "scDblFinder.score", raster=FALSE, pt.size=0.5)
  16. הסר את התאים מעל סף הניקוד הכפול של 0.25. סף זה נבחר על סמך עלילת הכינור שנוצרה לעיל, שהראתה שניתן להקצות את רוב התאים במערך הנתונים לציונים כפולים גבוהים מאוד או נמוכים מאוד, ו-0.25 הוא חתך סביר עבור מערך נתונים זה שיסיר את הרוב המכריע של הכפילים הסבירים מבלי להסיר הרבה כפולות לא סבירות.
    dataset <- subset(dataset, scDblFinder.score < 0.25)
  17. שמור את אובייקט Seurat של ערכת הנתונים כקובץ RDS בספריית העבודה.
    saveRDS(dataset, "dataset_post_Method2.rds")

3. ניתוח מערך נתונים של ריפוי פצעים חד-תאיים באמצעות Seurat

הערה: (שלב אופציונלי) אם אתה מפעיל את זרימת העבודה כאן, טען את קובץ ה-RDS שנשמר כאובייקט Seurat.

dataset <- readRDS("dataset_post_Method2.rds")

  1. בצע את זרימת העבודה הסטנדרטית של Seurat לנורמליזציה של ערכת נתונים של תא יחיד, קנה מידה וניתוח רכיבים ראשיים (PCA). זרימת עבודה סטנדרטית זו מתוארת בווינייטות הבאות של Seurat:
    Seurat - מדריך אשכולות מודרך: https://satijalab.org/seurat/articles/pbmc3k_tutorial
    רשימת פקודות Seurat: https://satijalab.org/seurat/articles/essential_commands
    DefaultAssay(dataset) <- "RNA"
    dataset <- NormalizeData(object = dataset)
    dataset <- FindVariableFeatures(object = dataset)
    dataset <- ScaleData(object = dataset)
    dataset <- RunPCA(object = dataset)
  2. דמיין את כמות השונות של מערך הנתונים ביחס ל-50 ממדי ה-PCA הראשונים (איור משלים 5).
    ElbowPlot(dataset, reduction = "pca", ndims = 50)
    חלק גדול מהשינויים העיקריים מתרחשים ב-13 הממדים הראשונים.
  3. בצע אשכולות תאים של מערך הנתונים באמצעות טווח מימדים מוגדר של PCA של 1-13 ורזולוציה מוגדרת של 0.1.
    dataset <- FindNeighbors(dataset, verbose = TRUE, dims = 1:13)
    dataset <- FindClusters(dataset, verbose = TRUE, resolution = 0.1)

    הערה: זרימת עבודה זו מתמקדת בהבדלים בקנה מידה גדול בסוגי תאים. לכן, הוא משתמש בפרמטר שמרני למדי עבור טווח הממדים של PCA, שבו 13 הממדים הראשונים מוצגים כמייצגים את הרוב המכריע של השונות בתוך מערך הנתונים. לצורך אפליה של תאים לתת-סוגים קטנים ונדירים יותר, המשתמש יכול להשתמש במספר גבוה יותר של ממדים לניתוח במורד הזרם מכיוון שאותם תת-סוגים של תאים נדירים מהווים ככל הנראה רמות נמוכות יותר של שונות במערך הנתונים. פרמטר הרזולוציה נע בין 0 ל-1, והוא קובע את גודל ההפרדה הקטגורית המוטלת על מערך הנתונים. ההגדרה של פרמטר זה תלויה בשאלת המחקר של המשתמש. עבור אשכול תאים למספר רב של תת-סוגים קטנים ונדירים, השתמש ברזולוציות גבוהות יותר לניתוח במורד הזרם. מכיוון שזרימת עבודה זו שואפת לחקור הבדלים רחבים יותר בין סוגי תאים עיקריים, היא משתמשת בערך רזולוציה קטן למדי של 0.1, שצפוי לקבץ תאים לקבוצות קטנות וגדולות יותר. השימוש בהגדרות המוזכרות בשלב 3.3 יפלה בין 8 אשכולות תאים ייחודיים. אשכולות אלה מוקצים אוטומטית למשתנה מטה-נתונים הנקרא "seurat_clusters".
  4. בצע צמצום ממדי UMAP ומציאת ניתוח שכנים באמצעות 13 ממדי ה-PCA הראשונים. הוסף את מספר הזרע 123 כדי להבטיח את יכולת השחזור של הקרנת הנתונים המתקבלת.
    dataset <- RunUMAP(dataset, verbose = TRUE, dims = 1:13, seed.use = 123)
    הערה: אלגוריתם UMAP הוא סטוכסטי ומכניס אקראיות להפחתת הממדים (ראה "יציבות ושחזור" ב-https://cran.r-project.org/web/packages/umap/vignettes/umap.html). בעוד ששימוש בזרע עקבי מספק "רמה מינימלית של שחזור" לאלגוריתם, התרשים המתקבל עדיין עשוי להיות שונה במקצת ממה שמוצג באיורים המייצגים ובתוצאות במורד הזרם. בדיקות מצאו שהתוצאות יהיו שונות במיוחד בין מחשבים המריצים Windows לאלה המריצים MacOS, ככל הנראה בשל יישומים שונים של אקראיות במערכות הפעלה אלה.
  5. דמיין את אשכולות התאים בתרשים UMAP (איור 1).
    DimPlot(dataset, group.by = "seurat_clusters", raster = FALSE, label = TRUE)
    הערה: האקראיות של אלגוריתם UMAP עשויה ליצור עלילות שונות במקצת, כפי שמוצג באיור המציג עלילות UMAP חלופיות שנוצרו באמצעות אותו קוד כמו לעיל במחשבים המריצים Windows ו-MacOS; שימו לב להבדלים הקלים בצורות האשכולות. לכן, הכרחי שהמשתמש ישמור ויחתים את כל הנתונים והעלילות בזמן שהם נוצרים, ושכל הניתוחים במורד הזרם על אשכולות ייעשו בזהירות ותוך התחשבות בהבנה ביולוגית, כפי שמתואר להלן לביאור סוג התא.
  6. מכיוון שתוויות הניסוי המקוריות שמתייחסות למקום ומתי התאים הגיעו במהלך ריפוי הפצע נכללות, דמיינו את ביאור הזמן/מרחב של הפצע של התאים בתרשים UMAP (איור 2).
    DimPlot(dataset, group.by = "time_space", raster = FALSE, label = FALSE)
  7. צור טבלה של שיוך אשכול תאים עם ביאור הזמן/מרחב של הפצע.
    table(dataset$time_space, dataset$seurat_clusters)
  8. קבע את הזהויות של סוגי התאים העיקריים במערך הנתונים. לשם כך, חשב את הגנים המתבטאים באופן דיפרנציאלי (DEG) בין כל האשכולות. קבל רשימות DEG עבור אשכולות, הקצה אותן למשתנה ושמור את הפלט כקובץ טקסט מופרד בתוך ספריית העבודה.
    הערה: שלב זה דורש מעבד אינטנסיבי ויכול להימשך זמן רב, תלוי בחומרה של המשתמש.
    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. הורד ופתח את קובץ dataset_cluster_markers.txt הכלול בגיליון אלקטרוני (למשל, Excel) על ידי העתקת התוכן של קובץ הטקסט ושימוש באשף ייבוא הטקסט כדי לציין את מפריד הפסיק ואת הזהות של עמודות שם הגן כטקסט. חשוב לציין ששמות הגנים הם 'טקסט', אחרת Excel ימיר אוטומטית שמות גנים מסוימים לתאריכים, למשל Sept7 משתנה ל-7 בספטמבר.
  10. בגיליון אלקטרוני, סנן את התוצאות לפי הפרמטרים המומלצים הבאים:
    1. דרג את העמודה avg_log2FC מהגדולה לקטנה ביותר על מנת לסדר את כל השורות בהתאם לשינויים היורדים בקיפול2 (log2FC).
    2. דרג את עמודת האשכול מהקטנה ביותר לגדולה ביותר כדי לסדר את כל השורות בהתאם למספרי אשכול Seurat הגדלים.
    3. סנן את העמודה avg_log2FC עבור מספרים גדולים או שווים ל-2.5 כדי להציג רק את הגנים המתבטאים בצורה הדיפרנציאלית ביותר (DEGs) באשכול המצוין לעומת אשכולות אחרים.
    4. סנן את העמודה pct.1 עבור מספרים גדולים או שווים ל- 0.4. עמודה זו מתייחסת לאחוז התאים באשכול המצוין המבטא את הגן המצוין (אשכול%) וקביעת הסף על 0.4 פירושה שרק גנים המתבטאים לפחות ב-40% מהתאים באשכול המצוין מוצגים.
    5. סנן את העמודה pct.2 עבור מספרים קטנים או שווים ל- 0.2. עמודה זו מתייחסת לאחוז התאים שאינם באשכול המצוין המבטאים את הגן המצוין (לא אשכול), וקביעת הסף על 0.2 פירושה שרק גנים המתבטאים לכל היותר ב-20% מהתאים שאינם באשכול המצוין מוצגים.
    6. סנן את העמודה p_val_adj עבור מספרים קטנים או שווים ל- 0.01. עמודה זו מתייחסת לערך ה-P המותאם או לשיעור הגילוי השגוי (FDR), המציין את החוזק הסטטיסטי של ה-DEG המצוין, וקביעת הסף ל-0.01 פירושה שרק גנים עם FDR <-0.01 מוצגים.
      הערה: טבלה משלימה 1 (JoVE_DEGs_cellMarkers.xlsx) מכילה את התפוקה המלאה של גנים מדורגים בעלי ביטוי דיפרנציאלי המשמשים בשלב 3.10 של הפרוטוקול. טבלה משלימה 2 מציגה את חמשת הגנים המובילים עבור כל אשכול בניתוח זה, עם הגנים המודגשים המשמשים להדמיות הבאות.
  11. לביאור לא מוטה מסוג תא של אשכולות, השתמש בכלי ניתוח העשרה מבוסס אינטרנט EnrichR.
    השתמש בקישור: https://maayanlab.cloud/Enrichr/
  12. העתק/י את רשימות ה-DEG עבור כל אשכול לחלון EnrichR נפרד ולאחר מכן לחץ/י על ״נתח״. הכלי EnrichR מריץ את רשימת הגנים דרך מאות מאגרי מידע שנאספו ומדרג כל מונח מועשר בכל קטגוריה.
  13. למטרות ביאור סוג תא, לחץ על סוגי תאים הכרטיסייה למעלה והתמקד ב-5 ההעשרה העליונות בשלושת מסדי הנתונים שנאספו על ידי סמני תאים בצד שמאל (איור 3):
    CellMarker 2024 (http://bio-bigdata.hrbmu.edu.cn/CellMarker/)
    טאבולה סאפיינס (https://tabula-sapiens-portal.ds.czbiohub.org/)
    PanglaoDB מוגבר (https://panglaodb.se/)
  14. בהתבסס על העשרת ה-DEGs במאגרי מידע אלה, אשר את הזהות הסבירה של 8 האשכולות. שימו לב שישנם שני אשכולות (2, 6) המעשירים כפיברובלסטים; לכן, שלב את האשכולות הללו לביאורים מסוג תא בודד. הקצה את זהויות סוג התא כתוויות למשתנה מטה-נתונים חדש הנקרא 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. דמיין את אשכולות התאים ששמם שונה כביאורים בעלילת UMAP (איור 4).
    DimPlot(dataset, group.by = "cell_types", raster = FALSE, label = FALSE)
  16. דמיין את הלוקליזציה של גני סמני האשכול העליונים (המודגשים) מטבלה 1 בסדרה של עלילות UMAP (איור 5).
    DefaultAssay(dataset) <- "RNA"
    FeaturePlot(dataset, features = c("Arg1", "Retnlg", "Fgf7", "Dsp", "Tie1", "Cd3g", "Cdh4", "Rgs5"), raster=FALSE, ncol = 4)
  17. דמיין את ה-DEG של סמן האשכול העליון על תרשים נקודות, מקובץ לפי מספרי האשכול המקוריים (איור משלים 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. דמיינו את ה-DEG של סמן האשכול העליון בתרשים נקודות, מקובצים לפי סוגי התאים המבוארים (איור 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. כדי לבצע ניתוחים של סדרות זמן, תחילה פשט את מערך הנתונים כדי להסיר את הרכיב המרחבי. לניתוחי מהלך זמן, קבץ את הערות הזמן/מרחב של הפצע לימים הכוללים לאחר הפציעה (DPW) עם משתנה מטא-נתונים חדש הנקרא "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. דמיין את קבוצות מהלך הזמן החדשות של הפצע בתרשים UMAP (איור משלים 7).
    DimPlot(dataset, group.by = "DPW", raster = FALSE, label = FALSE)
  21. צור טבלאות המציגות כמה תאים מכל סוג מתרחשים בכל DPW.
    ​table(dataset$DPW, dataset$cell_types)
    1. שלב אופציונלי: כדי לקבל גם רשימות DEG עבור קבוצות קורסי זמן פצועים, הקצה אותן למשתנה ושמור את הפלט כקובץ טקסט מופרד.
      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. המר את מספרי התאים לפרופורציות לכל קטגוריה כדי להבין טוב יותר את השינויים היחסיים בהרכב סוג התא לאורך מהלך הזמן של הריפוי. דמיין את שיעור ה-DPW בכל סוג תא (איור משלים 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. דמיין את שיעור סוגי התאים בכל DPW ( איור 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. שמור את אובייקט Seurat של ערכת הנתונים כקובץ RDS בספריית העבודה.
    saveRDS(dataset, "dataset_post_Method3.rds")

4. ניתוח תת-סוגים של תאים באמצעות Seurat

הערה: כוחו של ניתוח תאים בודדים מאפשר גילוי וניתוח של תת-סוגים נדירים בתוך סוגי התאים העיקריים שנותחו לעיל. דוגמה זו מתמקדת בפיברובלסטים, שהתקבצו בתחילה לשני אשכולות Seurat לפני ששולבו לקטגוריה אחת. חלק זה של הפרוטוקול מתמקד בפיברובלסטים באופן ספציפי, למעט כל סוגי התאים האחרים, ובוחן את זהותם ותכונותיהם הטמפורליות במהלך ריפוי פצעים. כשלב אופציונלי, במידת הצורך, טען את קובץ ה-RDS שנשמר כאובייקט Seurat.

dataset <- readRDS("dataset_post_Method3.rds")

  1. הגדר משנה את מערך הנתונים המקורי בהתאם לזהות התא הפיברובלסטים.
    זהים (מערך נתונים) <- "cell_types"
    dataset_fibroblast <- subset(dataset, idents = "Fibroblast")
  2. בצע PCA על מערך נתונים קטן יותר זה ודמיין את כמות השונות של מערך הנתונים ביחס לממדי PCA (איור משלים 9).
    dataset_fibroblast <- RunPCA(dataset_fibroblast, verbose = TRUE)
    ElbowPlot(dataset_fibroblast, reduction = "pca", ndims = 50)

    הערה: חלק גדול מהשינויים העיקריים מתרחשים בתשעת הממדים הראשונים.
  3. בצע אשכולות תאים של מערך הנתונים באמצעות טווח מימדים מוגדר של PCA של 1-9 ורזולוציה מוגדרת של 0.1.
    dataset_fibroblast <- FindNeighbors(dataset_fibroblast, verbose = TRUE, dims = 1:9)
    dataset_fibroblast <- FindClusters(dataset_fibroblast, verbose = TRUE, resolution = 0.1)

    הערה: באמצעות הגדרות אלה, האלגוריתם מבחין בין 3 אשכולות פיברובלסטים ייחודיים. אשכולות אלה מוקצים באופן אוטומטי למשתנה מטה-נתונים הנקרא seurat_clusters.
  4. בצע צמצום ממדי UMAP ומציאת ניתוח שכנים באמצעות 9 ממדי ה-PCA הראשונים. הוסף את מספר הזרע 123 כדי להבטיח את יכולת השחזור של הקרנת הנתונים המתקבלת.
    dataset_fibroblast <- RunUMAP(dataset_fibroblast, verbose = TRUE, dims = 1:9, seed.use = 123)
  5. דמיין את אשכולות התאים בתרשים UMAP (איור 8).
    DimPlot(dataset_fibroblast, group.by = "seurat_clusters", raster = FALSE, label = TRUE)
  6. דמיין את ביאור מהלך הזמן של הפצע של התאים בתרשים UMAP (איור משלים 10).
    DimPlot(dataset_fibroblast, group.by = "DPW", raster = FALSE, label = FALSE)
  7. קבל רשימות DEG עבור שלושת תת-הסוגים של פיברובלסטים ושמור אותן בקובץ טקסט בספריית העבודה.
    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. בצע שלבים דומים לעיל (שלבים 3.9-3.10) בגיליון אלקטרוני כדי לסנן את ה-DEGs לסמני תת-הסוג העליונים של פיברובלסטים.
  9. הגדר רשימת גנים מותאמת אישית כמשתנה על ידי העתקת 5 סמני תת-הסוג הפיברובלסטים המובילים עבור כל אחד משלושת האשכולות מקובץ הטקסט של DEG.
    FB_type_marker <- c("Plac8", "Cthrc1", "Adam12", "Ifi211", "Plat", "Cdh4", "Aldh3a1", "Ppp1r14a", "Oxtr", "Serpina3c", "Sostdc1", "Scube3", "Ptprz1", "Corin", "Alx4")
  10. דמיין את הגנים ברשימה במערך הנתונים של פיברובלסטים בלבד על ידי קריאה למשתנה בפרמטר התכונות של תרשים הנקודות (איור 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. דמיין את הגנים ברשימה במערך הנתונים המקורי של תא בודד על ידי קריאה למשתנה בפרמטר התכונות של תרשים הנקודות (איור משלים 11).
    DotPlot(dataset, group.by="cell_types", features = FB_type_marker) + RotatedAxis() + scale_colour_gradient2(midpoint = 0, low = "blue", mid = "grey", high = "red")
  12. דמיין את שיעור תת-הסוגים של פיברובלסטים בכל קטגוריית DPW (איור משלים 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. דמיין את שיעור תאי הפיברובלסטים DPW בכל קטגוריית תת-סוג פיברובלסטים (איור משלים 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. שמור את אובייקט Seurat של ערכת הנתונים כקובץ RDS בספריית העבודה.
    saveRDS(dataset_fibroblast, "dataset_fibroblast_post_Method4.rds")

5. דוגמה לניתוח מעקב באמצעות ניקוד מודול

הערה: שיטה שימושית אחת לניתוח מערכי נתונים של תא בודד נקראת ניקוד מודול. בתהליך עבודה זה ניתן להגדיר רשימת גנים על פי ידע קודם ולאחר מכן לחשב ציוני מודול, שיכולים לזהות העשרה פוטנציאלית של רשימת הגנים בתוך כל תא. ניתן לחשב ממוצע של ציונים אלה על פני הערות תאים כדי לחשוף דפוסים פוטנציאליים של העשרה.

כאן, השתמש ברשימות גנים ממחקר2 שפורסם בעבר, שבו זוהו גנים ספציפיים לשלב ריפוי הפצע באמצעות דגימות מרוצפות RNA בתפזורת מרחבי רצף הריפוי. רשימות הגנים נשמרו בקובץ טקסט מופרד בטאבים (קובץ משלים 2: JoVE_PhaseSpecificGenes.txt) שניתן כעת להוריד לספריית העבודה ולהשתמש בו ליצירת רשימות גנים המזהות את שלושת שלבי הריפוי העיקריים.

  1. טען רשימות גנים למשתנה על ידי קריאת קובץ ה-TEXT.
    PhaseSpecificGenes <- read_delim("JoVE_PhaseSpecificGenes.txt", delim="\t", col_names = T)
  2. הפרד את העמודות למשתני רשימת גנים בודדים ושנה את הגנים לשמות עכברים שהאות הראשונה שלהם מופיעה באותיות גדולות.
    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)

    הערה: (אופציונלי) במידת הצורך, טען את קובץ ה-RDS שנשמר כאובייקט Seurat.
    dataset <- readRDS("dataset_post_Method3.rds")
  3. השתמש ברשימות הגנים כמודולים כדי לדרג כל תא במערך הנתונים בהתאם לשלושת שלבי הריפוי.
    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. הצג באופן חזותי את ציוני המודול המצטבר לכל קטגוריית תאים, כולל DPW וסוגי תאים עיקריים (איור 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. דוגמא לניתוח המשך באמצעות CellChat

הערה: שיטה שימושית נוספת ומצוטטת היטב לניתוח מערכי נתונים של תא בודד היא הסקת אינטראקציות תא-תא. בזרימת עבודה זו, השתמש בחבילה CellChat, המסיקה תקשורת תא-תא על ידי ניתוח אינטראקציות דיפרנציאליות של ליגנד-קולטן בין קבוצות תאים22. לאחרונה, מפתחי CellChat פרסמו פרוטוקול מפורט שלב אחר שלב לשימוש הכללי שלו24, וזהו משאב מצוין למשתמשים כשהם עובדים על זרימת העבודה הבאה ומיישמים אותו על מערכי הנתונים שלהם. כדוגמה, זרימת העבודה הבאה משווה אינטראקציות של כל התאים העיקריים בפצעים ב-1 לעומת 14 ימים לאחר הפציעה (DPW). כל שלב אינו מתואר בפירוט רב, מכיוון שכל השלבים כבר תוארו בפרסום הרשמי של CellChat24 וכן בהדרכות, המקושרות כאן:

הסקה וניתוח של תקשורת תא-תא באמצעות
צ'אט סלולרי: https://github.com/jinworks/CellChat/blob/master/tutorial/CellChat-vignette.html

ניתוח השוואה של מערכי נתונים מרובים באמצעות CellChat:
https://github.com/jinworks/CellChat/blob/master/tutorial/Comparison_analysis_of_multiple_datasets.html

שלב אופציונלי: במידת הצורך, טען את קובץ ה-RDS שנשמר כאובייקט Seurat:

dataset <- readRDS("dataset_post_Method3.rds")

  1. הגדר את מערך הנתונים המקורי לשני מערכי נתונים בהתאם לביאור DPW.
    Idents(dataset) <- "DPW"
    dataset_D1 <- subset(dataset, ident = "D1")
    dataset_D14 <- subset(dataset, ident = "D14")
  2. הגדר את ההערה שבאמצעותה יבוצע CellChat --- במקרה זה, השתמש בסוגי התאים העיקריים.
    Idents(dataset_D1) <- "cell_types"
    Idents(dataset_D14) <- "cell_types"
  3. צור את אובייקטי CellChat ופעל לפי זרימת העבודה הטיפוסית של CellChat. ראה מדריכים המקושרים למעלה כהפניות מפורטות לכל שלב.
    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. דמיין את עוצמות האינטראקציה הנכנסת לעומת היוצאת בכל סוגי התאים העיקריים בכל נקודת זמן של ריפוי פצע (איור משלים 14).
    netAnalysis_signalingRole_scatter(cellchat_D1)
    netAnalysis_signalingRole_scatter(cellchat_D14)

    פיברובלסטים מגדילים באופן דרמטי את האינטראקציות שלהם בין D1 ל-D14 DPW.
  5. הצג את הרשימות של כל מסלולי התקשורת המשמעותיים בין תאים מוסקים.
    cellchat_D1@netP$pathways
    cellchat_D14@netP$pathways

    מסלול הקולגן הוא אחד המסלולים המשמעותיים הן ב-D1 והן ב-D14 DPW.
  6. התמקדו במסלול איתות הקולגן ובאינטראקציה שלו עם פיברובלסטים.
    pathways.show <- c("COLLAGEN")
  7. דמיין את האינטראקציות של מסלול איתות הקולגן בין סוגי תאים באמצעות דיאגרמות מעגל (איור משלים 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. דמיין את האינטראקציות של מסלול איתות הקולגן בין סוגי תאים באמצעות דיאגרמות אקורדים (איור משלים 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. דמיין את אינטראקציות מסלול האיתות של COLLAGEN עם פיברובלסטים כתאי מקור (איור משלים 17).
    הערה: סוגי התאים באובייקטים של cellchat רשומים כמזהים לפי הסדר שבו הם הוקצו באובייקט Seurat המקורי: 1 = מקרופאג, 2 = נויטרופיל, 3 = פיברובלסטים, 4 = תא אפיתל, 5 = תא אנדותל, 6 = תא T, 7 = תא שריר חלק.
    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. דמיין את התרומות של כל זוג קולטני ליגנד במסלול איתות הקולגן עם פיברובלסטים כתאי מקור.
    1. שימוש בתרשים בועות (איור משלים 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. שימוש בדיאגרמות אקורדים (איור משלים 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. התמקדו באינטראקציה בין קולטן ליגנד Col1a1-Cd44 בתוך מסלול האיתות של קולגן.
    ​LR.show <- "COL1A1_CD44"
  12. דמיין את האינטראקציות של קולטני ליגנד Col1a1-CD44 בין סוגי תאים באמצעות דיאגרמות אקורדים (איור משלים 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. בצע ניתוח CellChat דיפרנציאלי על ידי יצירת אובייקט CellChat משולב.
    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. דמיין את המספרים הכוללים והעוצמות היחסיות של אינטראקציות תא-תא בנקודות הזמן של ריפוי הפצע (איור משלים 21).
    gg1 <- compareInteractions(cellchat_D14_v_D1, show.legend = F)
    gg2 <- compareInteractions(cellchat_D14_v_D1, show.legend = F, measure = "weight")
    gg1 + gg2
  15. דמיין באמצעות תרשים מעגל את עוצמת האינטראקציה הדיפרנציאלית בין תא לתא בין כל סוג תא כאשר הפצע עובר מיום 1 ליום 14 (איור משלים 22).
    netVisual_diffInteraction(cellchat_D14_v_D1, weight.scale = T, measure = "weight")
  16. דמיין באמצעות מפת חום את עוצמת האינטראקציה הדיפרנציאלית בין תא לתא בין כל סוג תא כאשר הפצע עובר מיום 1 ליום 14 (איור משלים 23).
    netVisual_heatmap(cellchat_D14_v_D1, measure = "weight")
  17. דמיין באמצעות תרשים דירוג את התרומות היחסיות של מסלולים בודדים לאינטראקציות תא-תא עם פיברובלסטים כתאי מקור ביום 14 לעומת יום 1 (איור משלים 24).
    rankNet(cellchat_D14_v_D1, mode = "comparison", measure = "weight", sources.use = 3, targets.use = NULL, stacked = T, do.stat = TRUE)
  18. דמיין באמצעות תרשימי בועות את התרומות היחסיות של זוגות בודדים של קולטני ליגנד במסלול איתות הקולגן עם פיברובלסטים כתאי מקור ביום 14 בהשוואה ליום 1 (איור משלים 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. בדיוק כמו אובייקטי Seurat, ניתן לשמור ולפתוח אובייקטים של CellChat כקבצי RDS.
    saveRDS(cellchat_D1, "cellchat_D1.rds")
    saveRDS(cellchat_D14, "cellchat_D14.rds")
    saveRDS(cellchat_D14_v_D1, "cellchat_D14_v_D1.rds")
  20. שלב אופציונלי: ניתן לפתוח אובייקטי CellChat גם מקבצי RDS.
    cellchat_D1 <- readRDS("cellchat_D1.rds")
    cellchat_D14 <- readRDS("cellchat_D14.rds")
    cellchat_D14_v_D1 <- readRDS("cellchat_D14_v_D1.rds")

7. דוגמה לניתוח אינטגרטיבי על ידי שילוב של מספר מערכי נתונים של תא בודד

הערה: מערכי נתונים של תא בודד מופרדים לעתים קרובות למספר קבצים מכיוון שהם היו רצפים בקבוצות או בקבוצות. זרימת עבודה זו מראה כיצד לשלב שתיים מתוך חמש הקבוצות של מערך הנתונים של ריפוי פצעים 20. השיטות הנוכחיות לשילוב מערכי נתונים מתוארות על ידי הווינייטות הבאות של Seurat:

מבוא לשילוב scRNA-seq:
https://satijalab.org/seurat/articles/integration_introduction

ניתוח אינטגרטיבי ב-Seurat v5:

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

הערה: ישנן שיטות רבות לשילוב מערכי נתונים של תא בודד, שלכל אחת מהן נקודות חוזק וחולשה משלה. לקבלת פרטים, עיין בבחינת הביצועים המקיפה של שיטות אינטגרציה25. חשוב שהמשתמש יקרא את כל התיעוד הרלוונטי לפני שהוא מסתמך על שיטת אינטגרציה אחת.

  1. חזור על כל השלבים בשיטה 2 עבור אצווה נוספת של מערך הנתונים של Hu et al.20. בפרוטוקול הבא נעשה שימוש באצווה #3. קובץ הסקריפט המשלים R כלול וניתן להשתמש בו לעיבוד אצווה #3 (קובץ משלים 3: JoVE_Rscript_b3. R). זכור ליצור ולהשתמש במשתנה חדש עבור מערך הנתונים --- בקוד למטה, השתמש ב-"dataset_b3" עבור אצווה מערך נתונים #3.
    1. שלב אופציונלי: במידת הצורך, פתח את שני מערכי הנתונים כאובייקטי Seurat מקבצי ה-RDS שלהם שנשמרו בספריית העבודה:
      dataset <- readRDS("dataset_post_Method2.rds")
      dataset_b3 <- readRDS("dataset_b3_post_Method2.rds")
  2. הקצה משתנה חדש לכל מערך נתונים בשם "אצווה" כדי לתייג את מערך הנתונים של המקור בניתוחים הבאים.
    dataset@meta.data$batch <- "b1"
    dataset_b3@meta.data$batch <- "b3"
  3. בצע מיזוג Seurat של שתי ערכות הנתונים, הוספת ביאורים של מזהי תאים מבוססי אצווה ולאחר מכן בצע את זרימת העבודה הסטנדרטית של Seurat עבור ערכת הנתונים הממוזגת, כמתואר בשיטה 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. בצע אשכולות וניתוח UMAP על מערך הנתונים המשולב לפני שילוב הנתונים.
    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. דמיין את עלילת ה-UMAP לפי מספרי אשכול ואצווה (איור משלים 26).
    DimPlot(dataset_merged, reduction = "umap.unintegrated", group.by = c("seurat_clusters", "batch"))
  6. הצג את התפלגות מספרי התאים בכל אשכול לפי מספר אצווה.
    table(dataset_merged$batch, dataset_merged$seurat_clusters)
    הערה: מעלילת UMAP והטבלה, לא נראה שיש השפעות אצווה משמעותיות עבור שני מערכי הנתונים הללו. עדויות להשפעות אצווה יבואו לידי ביטוי כאי התאמות בלתי צפויות בהתפלגות האשכולות בין שני מערכי הנתונים, מה שיכול להיות שיש הבדלים טכניים פוטנציאליים בין מערכי הנתונים שגוברים על הדמיון הביולוגי בפועל.
  7. בצע אינטגרציה של נתוני Seurat בשיטת RPCA. למידע נוסף על שיטה זו ושיטות אחרות לשילוב נתונים, אנא קרא את הוויניט של Seurat המקושר למעלה.
    dataset_merged <- IntegrateLayers(
    object = dataset_merged, method = RPCAIntegration,
    orig.reduction = "pca", new.reduction = "integrated.rpca",
    verbose = TRUE
    )
  8. בצע ניתוח אשכולות ו-UMAP על מערך הנתונים המשולב לאחר שילוב הנתונים.
    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. דמיין את עלילת ה-UMAP לפי מספרי אשכול ואצווה לאחר האינטגרציה (איור משלים 27).
    DimPlot(dataset_merged, reduction = "umap.rpca", group.by = c("seurat_clusters","batch"))
  10. הצג את התפלגות מספרי התאים בכל אשכול לפי מספר אצווה לאחר האינטגרציה.
    table(dataset_merged$batch, dataset_merged$seurat_clusters)
    מעלילת UMAP וטבלת הנתונים המשולבים, יש כעת חפיפה מצוינת בין שתי הקבוצות על פני אשכולות שונים. מעניין ששילוב הנתונים הביא לזיהוי אשכול נוסף באמצעות אותם פרמטרים של אשכולות.
  11. לאחר שילוב מערך הנתונים ולפני ניתוחים במורד הזרם, יש לצרף את השכבות של מערך הנתונים הממוזג.
    dataset_merged <- JoinLayers(dataset_merged)
  12. שמור את אובייקט Seurat של ערכת הנתונים כקובץ RDS בספריית העבודה.
    saveRDS(dataset_merged, "merged_dataset_post_Method7.rds")

Results

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

החל משיטה #2, הפרוטוקול עובר דרך השלבים לטעינה וביצוע שלבי בקרת איכות במערך נתונים של ריפוי פצעים חד-תאיים. לאחר יצירת אובייקט Seurat (שלב 2.6.2), סדרה של שלבים ממזגת את שתי הבדיקות בתוך מערך הנתונים (RNA וחלבון; שלבים 2.6.3-2.6.7) ומבצעת דה-קומפלקס של בדיקת החלבון על פי ברקודים מרחביים-זמניים (שלבים 2.6.8-2.6.9). פונקציית הפירוק מקצה מספר תוויות מטא נתונים לכל תא במערך הנתונים, כולל "barcodes_maxID", המזהה את הברקוד המרחבי-זמני הסביר ביותר של כל תא (שלב 2.6.10). בשלב 2.6.11, פונקציית עלילת הכינור מבוצעת כדי להמחיש את התפלגות הגנים שזוהו בתאים על סמך הברקודים המרובים שלהם. התוצאה המייצגת של שלב זה (איור משלים 1) מראה שיש התפלגות אחידה למדי של גנים שזוהו עבור כל ברקוד, מה שחשוב לשלמות מערך הנתונים ולניתוח במורד הזרם של נקודות זמן של ריפוי פצעים. לאחר הקצאת התווית המתאימה לברקודי החלבון (שלב 2.6.12), הפרוטוקול מראה כיצד לבצע שלבי בקרת איכות על בדיקת ה-RNA של מערך הנתונים, החל מחישוב אחוז הגנים המיטוכונדריאלים בכל תא (שלב 2.9). בשלב 2.10, פונקציית עלילת פיזור התכונה מבוצעת כדי לדמיין את התפלגות הגנים שזוהו, מספר ה-RNA ואחוז המיטוכונדריה בכל התאים. התוצאות המייצגות של שלב זה (איור משלים 2) מראות כי ישנם מספר תאים עם תוכן מיטוכונדריאלי גדול, אשר מתאם עם ספירת RNA נמוכה ומזהה תאים מתים או גוססים. לאחר הסרת תאים עם ספירת RNA נמוכה ותכולה מיטוכונדריאלית גדולה (שלב 2.11), בשלב 2.12 מבוצעת פונקציית עלילת פיזור תכונה נוספת על מערך הנתונים של תת-הקבוצה, והתוצאה המייצגת של שלב זה (איור משלים 3) מראה כי התפלגות הגנים שזוהו ואחוז ה-RNA המיטוכונדריאלי לתא היא כעת נורמלית יותר, מה שמפנה את הדרך לניתוחים חזקים במורד הזרם. לאחר מכן, הפרוטוקול מתאר את השימוש בפונקציית scDblFinder כדי לזהות כפילים סבירים במערך הנתונים ומקצה מטא-נתונים חדשים בשם "scDblFinder.score" לכל תא (שלבים 2.13-2.14). בשלב 2.15, פונקציית עלילת הכינור מבוצעת כדי להמחיש את התפלגות ציוני הכפילים במערך הנתונים, והתוצאה המייצגת של שלב זה (איור משלים 4) מראה שישנם מספר תאים עם ציוני כפולות גבוהים יחסית, וכי 0.25 נראה כחתך טבעי שמעליו יש אוכלוסייה של כפילים סבירים. לכן, השלבים הבאים משתמשים בפרמטר זה כדי להגדיר את מערך הנתונים לתאים מתחת לחתך (שלב 2.16), ובכך להשלים את שלבי בקרת האיכות עבור מערך נתונים חד-תאי זה.

החל משיטה #3, הפרוטוקול עובר על השלבים לניתוח מערך הנתונים של ריפוי פצעים חד-תאיים מבוקר איכות באמצעות חבילת Seurat וזרימת העבודה. לאחר נורמליזציה וקנה מידה של נתוני ה-RNA, מבוצע ניתוח PCA (שלב 3.1). בשלב 3.2, פונקציית עלילת המרפק משמשת כדי להמחיש את כמות השונות של מערך הנתונים ביחס ל-50 ממדי ה-PCA הראשונים, ואת התוצאה המייצגת של שלב זה (תרשים משלים 5) מראה שחלק גדול מהשונות העיקרית מתרחשת ב-13 הממדים הראשונים כפי שזוהו על ידי העיקול בגרף. לאחר מכן הפרוטוקול מראה כיצד למצוא שכנים ולבצע אשכולות תאים (שלב 3.3) והפחתת ממדי UMAP (שלב 3.4) של מערך הנתונים תוך שימוש ב-13 ממדי ה-PCA הראשונים ופרמטר רזולוציית אשכולות נמוכה יחסית של 0.1, שניהם נבחרו על מנת לזהות את סוגי התאים העיקריים הניתנים להכללה ביותר בפצעים. בשלב 3.5, פונקציית העלילה הממדית מבוצעת כדי לדמיין את אשכול התאים בעלילת UMAP, ואת התוצאה המייצגת של שלב זה (איור 1) מראה שכל התאים במערך הנתונים מקובצים סביב 8 קבוצות אשכול Seurat מקודדות צבע עיקריות, עם עלילות UMAP שונות במקצת המתקבלות ממחשב המריץ Windows (משמאל) ו-MacOS (מימין). בשלב 3.6, מבוצעת פונקציית עלילה ממדית נוספת כדי להמחיש את ביאור הזמן/מרחב של הפצע של התאים, ואת התוצאה המייצגת של שלב זה (איור 2) מראה שכל התאים במערך הנתונים מפוזרים לפי מקור הזמן/מרחב שלהם, ללא אשכולות נראים לעין לפי ביאור הזמן/מרחב. לאחר מכן, הפרוטוקול מתאר כיצד להשיג רשימות של גנים המתבטאים באופן דיפרנציאלי ולשמור אותם בקובץ טקסט (שלב 3.8), לפתוח את טבלת הנתונים בגיליון אלקטרוני ולבצע שלבי סינון שונים על מנת להשיג את סמני האשכולות המדורגים ביותר עבור כל אשכול תאים (שלבים 3.9-3.10.6). התוצאה המייצגת של שלבים אלה (טבלה משלימה 1) הוא קובץ הגיליון האלקטרוני הסופי המכיל את הפלט המלא של גנים מדורגים המתבטאים באופן דיפרנציאלי, בעוד תוצאה מייצגת נוספת (טבלה משלימה 2) היא טבלה פשוטה המציגה את חמשת הגנים המווסתים והמבוטאים המובילים עבור כל אשכול Seurat. לאחר מכן הפרוטוקול מתאר כיצד להשתמש בכלי ניתוח העשרה פונקציונלי מבוסס אינטרנט הנקרא EnrichR כדי לזהות סוגי תאים משוערים על פי הגנים של סמני האשכול העליונים (שלבים 3.11-3.12), ואת התוצאות המייצגות של שלבים אלה (איור 3) הם צילומי מסך חתוכים של פלטי EnrichR המציגים את סוגי התאים המועשרים המובילים עבור כל אחד משמונת אשכולות התאים. לאחר מכן הפרוטוקול מקצה תווית מטא-נתונים חדשה בשם "cell_types" לכל התאים באשכולות Seurat המתאימים בהתאם להערות סוג התא המועשר ביותר שלהם (שלב 3.14). בשלב 3.15, פונקציית העלילה הממדית מבוצעת כדי לדמיין את אשכולות התאים ששמם שונה כהערות מסוג תא בעלילת UMAP, ואת התוצאות המייצגות של שלב זה (איור 4) הראה שכל התאים במערך הנתונים התקבצו סביב סוגי התאים העיקריים המקודדים בצבע. בשלב 3.16, נעשה שימוש בפונקציית עלילת התכונה כדי להמחיש את הלוקליזציה של הגנים של סמני האשכול העליונים (מטבלה משלימה 2) בסדרה של עלילות UMAP, והתוצאות המייצגות (איור 5) הם רשת של עלילות UMAP המציגות את הביטוי הגבוה של הגנים של סמני התאים העליונים במיקומי אשכול סוגי התאים העיקריים שלהם. בשלבים 3.17 ו-3.18, פונקציית תרשים הנקודות בוצעה כדי להמחיש את רמות הביטוי היחסיות של גנים של סמני אשכול עליונים בתאים, תחילה מקובצים על ידי מספרי אשכול Seurat המקוריים שלהם (שלב 3.17) ושנית מקובצים על ידי תוויות סוג תא מבוארות (שלב 3.18). התוצאות המייצגות של שלבים אלה אישרו את רמת הביטוי הגבוהה של הגנים של סמני התאים העליונים רק באשכולות ה-Seurat שלהם (תרשים משלים 6) ורק בסוגי התאים העיקריים שלהם (איור 6). השלב הבא בפרוטוקול מפשט את התוויות המקוריות המבוססות על חלבון מרחבי-טמפורלי להערות זמניות בלבד, המזהות תאים על סמך הימים שלאחר הפציעה (DPW) שמהם הם הגיעו. בשלב 3.20, פונקציית העלילה הממדית מבוצעת כדי לדמיין את התאים כהערות DPW בעלילת UMAP, ואת התוצאות המייצגות של שלב זה (תרשים משלים 7) הראה את הלוקליזציה של הערות מהלך זמן הפצע על פני מערך הנתונים של ריפוי פצע חד-תאי. כצפוי, הערות יום 1 (D1) שלטו באשכולות הנויטרופילים והמקרופאגים, בעוד שנקודות הזמן המאוחרות יותר של ריפוי הפצעים היו מיוצגות יותר בסוגי תאים אחרים. השלבים הבאים בפרוטוקול השתמשו בתרשים עמודות מוערמות כדי לדמיין תחילה את הפרופורציות של DPW על פני סוגי תאים שונים (שלב 3.22) ולאחר מכן כדי לדמיין את הפרופורציות של סוגי התאים על פני נקודות זמן שונות (3.23). התוצאות המייצגות של שלבים אלה הן עלילות פרופורציה המציגות את המספרים היחסיים של תאי DPW בכל קטגוריית סוג תא עיקרית (תרשים משלים 8) והמספרים היחסיים של סוגי התאים העיקריים בכל קטגוריית DPW (איור 7). תוצאות אלו אישרו את המפל התאי הידוע של ריפוי פצעי עור, שבו תאי חיסון (נויטרופילים ומקרופאגים) שולטים בנקודות הזמן המוקדמות במהלך השלב הדלקתי, וסוגי התאים האחרים (תאי אפיתל ותאי אנדותל) מתחילים להופיע בשלב ההתפשטות, כאשר פיברובלסטים דומיננטיים במיוחד בנקודות הזמן המאוחרות יותר במהלך פתרון הפצע.

החל משיטה #4, הפרוטוקול מתאר את השלבים לשימוש ב-Seurat כדי להתמקד בסוג תא מרכזי בודד במערך הנתונים של תא בודד על מנת לזהות תת-סוגים תאיים פוטנציאליים במהלך ריפוי פצעים. הפרוטוקול מתמקד בפיברובלסטים, שהתקבצו בתחילה לשני אשכולות Seurat לפני ששולבו לקטגוריה אחת, ומתאר כיצד ליצור אובייקט Seurat חדש המכיל רק את הפיברובלסטים ממערך הנתונים המקורי (שלב 4.1). זרימת העבודה של Seurat מבוצעת על מערך נתונים ספציפי לפיברובלסטים זה (שלבים 4.2-4.4), כאשר שלב 4.2 מביא לתרשים מרפק (איור משלים 9) המראה שחלק גדול מהשונות העיקרית במערך הנתונים של הפיברובלסטים מתרחש ב-9 ממדי ה-PCA הראשונים. בשלב 4.5, פונקציית העלילה הממדית מבוצעת כדי לדמיין את אשכולות התאים בעלילת UMAP, והתוצאות המייצגות של שלב זה (איור 8) הראו את הפיברובלסטים במערך הנתונים מקובצים סביב 3 תת-סוגי התאים המקודדים בצבע. הדמיית מערך הנתונים של הפיברובלסטים על פי ביאור ה-DPW שלהם (שלב 4.6), הביאה לעלילת UMAP (איור משלים 10) המציגה פיברובלסטים במערך הנתונים המופצים לכל אורכו על פי ביאור ה-DPW שלהם. לאחר מכן, הפרוטוקול מתאר כיצד להשיג רשימות של גנים המתבטאים באופן דיפרנציאלי ולשמור אותם בקובץ טקסט (שלב 4.7), לפתוח את טבלת הנתונים באקסל ולבצע שלבי סינון שונים על מנת להשיג את סמני האשכול המדורגים הגבוהים ביותר עבור כל אשכול תאים (שלב 4.8), ולהקצות משתנה חדש המפרט את הגנים המובילים של סמני פיברובלסטים בשם "FB_type_marker" (שלב 4.9). בשלב 4.10, פונקציית תרשים הנקודות משמשת להמחשת הגנים ברשימה במערך הנתונים של פיברובלסטים בלבד על ידי קריאה למשתנה "FB_type_marker" בפרמטר התכונות, והתוצאות המייצגות של שלב זה (איור 9) הן תרשימי נקודות המאשרים ביטוי גבוה של סמני תת-סוג פיברובלסטים רק בקטגוריות האשכול המתאימות שלהם (למעלה) אך מפוזרים למדי בכל קטגוריות DPW (למטה). בשלב 4.11, אותו משתנה תכונות נקרא כדי לדמיין את הגנים של סמן הפיברובלסטים במערך הנתונים הכולל של ריפוי הפצעים, והתוצאה המייצגת (איור משלים 11) היא תרשים נקודות שאישר את הביטוי הגבוה של סמני תת-סוג פיברובלסטים בעיקר בפיברובלסטים המקוריים. לבסוף, השלבים הבאים בפרוטוקול השתמשו בעלילות עמודות מוערמות כדי לדמיין תחילה את הפרופורציות של DPW על פני שלושת תת-הסוגים של פיברובלסטים (שלב 4.12) ולאחר מכן לדמיין את הפרופורציות של תת-סוגים של פיברובלסטים על פני נקודות זמן שונות (שלב 4.13). התוצאות המייצגות של שלבים אלה הן עלילות פרופורציה המציגות את המספרים היחסיים של תאי DPW בכל תת-קטגוריה של פיברובלסטים (איור משלים 12) ואת המספרים היחסיים של תת-סוגים של פיברובלסטים בכל קטגוריית DPW (איור משלים 13). תוצאות אלו מצביעות על שינוי משמעותי בפרופורציות תת-סוג הפיברובלסטים לאורך זמן הריפוי, כאשר תת-הסוג הראשון של פיברובלסטים (אשכול 0) דומיננטי מאוד בפצעים בשלב מוקדם (D1 ו-D3), תת-הסוג השני (אשכול 1) דומיננטי במהלך פתרון הפצע (D14), ותת-הסוג השלישי (אשכול 2) הוא הגבוה ביותר במהלך השלב הפרוליפרטיבי של ריפוי הפצע (D7).

החל משיטה #5, הפרוטוקול עובר על השלבים לניתוח מערך נתונים של ריפוי פצעים של תא בודד באמצעות פונקציית הניקוד של המודול ב-Seurat. הפרוטוקול מתאר תחילה את השלבים של שימוש בקובץ טקסט ללא כרטיסיות להעלאת ערכות גנים למשתנים ב-R (שלבים 5.1-5.2), ולאחר מכן יישום פונקציית ניקוד המודול על שלוש קבוצות גנים המתייחסות לשלושת השלבים העיקריים של ריפוי פצעים (שלב 5.3). בשלב 5.4, פונקציית תרשים הנקודות משמשת להמחשת ציוני המודול המצטבר על פני שתי קטגוריות מטא-נתונים שונות, והתוצאות המייצגות עבור שלב זה (איור 10) הן תרשימי נקודות המראים את הביטוי הממוצע של מודולי שלב הריפוי העיקריים על פני תאים בקטגוריית הימים שלאחר הפציעה (DPW, מימין) ועל פני קטגוריית סוגי התאים העיקריים (משמאל). תוצאות אלו מראות כי היישום של פרופילי ביטוי גנים מבוססי ריצוף בתפזורת על מערכי נתונים של ביטוי תאים בודדים באופן פסאודו-בתפזורת הוא שיטה רבת עוצמה לגישות ביואינפורמטיקה השוואתיות על ידי שימוש במערכי נתונים שפורסמו בעבר בתחום ריפוי פצעים.

החל משיטה #6, הפרוטוקול עובר דרך השלבים לניתוח מערך נתונים של ריפוי פצעים חד-תאיים שמקורו בסורה באמצעות חבילת CellChat וזרימת העבודה על פי שאלה מדעית ספציפית של השוואת תאים שמקורם בפצעים בשלב מוקדם בהשוואה לפצעים בשלב מאוחר. הפרוטוקול מגדיר תחילה את מערך הנתונים הכולל של Seurat לשתי נקודות זמן לאחר הפציעה, האחת במהלך השלב הדלקתי (יום 1 (D1)) והשנייה במהלך פתרון הפצע (יום 14 (D14)) (שלב 6.1). נוצרים שני אובייקטים של CellChat, והפרוטוקול עובר על כל הפונקציות האופייניות של פרוטוקול CellChat כדי לחשב את כל האינטראקציות המשוערות בין סוגי התאים שזוהו בשיטה #3 של הפרוטוקול (שלבים 6.2-6.3). בשלב 6.4, פונקציית עלילת פיזור האיתות מבוצעת כדי לדמיין את עוצמת האינטראקציה הנכנסת והיוצאת בכל סוגי התאים העיקריים בכל נקודת זמן של ריפוי פצע. התוצאות המייצגות של שלב זה (תרשים משלים 14) הם תרשימי פיזור המראים את עוצמת האינטראקציות הנכנסות (ציר ה-y) והיוצאות (ציר ה-x) עבור סוגי התאים העיקריים בנקודות הזמן D1 (משמאל) ו-D14 (מימין). תוצאות אלה הראו כי לתאים חיסוניים כמו נויטרופילים ומקרופאגים היו עוצמות האינטראקציה הגבוהות ביותר בין תאים במהלך השלב הדלקתי, אך פיברובלסטים שלטו באינטראקציות בין תאים במהלך פתרון הפצע, מה שמאשר עשרות שנים של מחקר ריפוי פצעים. השלבים הבאים ממקדים את הניתוח באחד המסלולים המועשרים משמעותית, מסלול הקולגן (שלבים 6.5-6.6). בשלב 6.7, פונקציית דיאגרמת המעגל מבוצעת כדי לדמיין את אינטראקציות מסלול איתות הקולגן בין סוגי התאים בשתי נקודות הזמן. התוצאות המייצגות של שלב זה (תרשים משלים 15) הם תרשימי מעגל המראים את אינטראקציות איתות מסלול הקולגן המוסקות בין כל סוגי התאים ב-D1 (משמאל) ו-D14 (מימין). בשלב 6.8, אותן אינטראקציות מוצגות באמצעות פונקציית דיאגרמת האקורדים, עם התוצאות המייצגות (תרשים משלים 16) הם דיאגרמות אקורדים המציגות את האינטראקציות של איתות מסלול הקולגן המוסק בין כל סוגי התאים בכל נקודת זמן. כצפוי, תוצאות אלה הראו כי פיברובלסטים היו תאי המקור העיקריים למסלול איתות הקולגן, אם כי זרימת המידע הייתה מוגבלת יותר לתאי חיסון ב-D1 בהשוואה ל-D14. כדי להתמקד בפיברובלסטים כתא מקור באינטראקציות תא-תא, שלב 6.9 חוזר על פונקציית דיאגרמת האקורדים ומוסיף פרמטר של תא מקור, ואת התוצאות המייצגות (תרשים משלים 17) הם דיאגרמות אקורדים המציגות את האינטראקציות של איתות מסלול הקולגן המוסק עם פיברובלסטים כתאי מקור בכל נקודת זמן. בשלב 6.10, מבוצעות שתי פונקציות כדי להמחיש את התרומות של כל זוג קולטני ליגנד במסלול איתות הקולגן עם פיברובלסטים כתאי מקור, האחד באמצעות תרשימי בועות (שלב 6.10.1) והשני באמצעות דיאגרמות אקורדים (שלב 6.10.2). התוצאות המייצגות מראות את התרומות המוסקות של כל זוג קולטני ליגנד במסלול הקולגן המאותת עם פיברובלסטים כתאי מקור בנקודות הזמן D1 (משמאל) ו-D14 (מימין) באמצעות שתי עלילות הבועות (תרשים משלים 18) ודיאגרמות אקורדים (תרשים משלים 19). תוצאות אלה הראו כי ב-D1 מסלול הקולגן המגיע מפיברובלסטים הוגבל לנויטרופילים ומקרופאגים עם דומיננטיות של קולטני Cd44 ו-Sdc4, אך ב-D14 תאים אחרים פעלו כמקלטים באמצעות מגוון קולטנים כולל אינטגרינים. כדי להתמקד באינטראקציה של קולטן ליגנד Col1a1-Cd44, שהראתה חוזקות חזקות באינטראקציות פיברובלסטים, נקבע פרמטר (שלב 6.11) ולאחר מכן משמש בשלב 6.12 בפונקציית דיאגרמת אקורדים כדי לדמיין את האינטראקציה הספציפית הזו של ליגנד-קולטן בין כל סוגי התאים, עם התוצאות המייצגות (תרשים משלים 20) הן דיאגרמות אקורדים המציגות את האינטראקציות המוסקות של קולטני ליגנד Col1a1-Cd44 בין כל סוגי התאים בנקודות הזמן D1 (משמאל) ו-D14 (מימין). התוצאות הללו הראו כי בעוד שב-D1 האינטראקציה הזו מוגבלת לפיברובלסטים כתאי מקור, ב-D14 גם מקרופאגים ותאי שריר חלק משמשים כתאי מקור. לאחר מכן, הפרוטוקול מתאר כיצד לבצע ניתוח CellChat דיפרנציאלי על ידי מיזוג תחילה של אובייקטי D1 ו-D14 CellChat (שלב 6.13). בשלב 6.14, פונקציית השוואת האינטראקציות מבוצעת כדי לדמיין את המספרים הכוללים והעוצמות היחסיות של אינטראקציות תא-תא בין שתי נקודות הזמן של ריפוי הפצע, ואת התוצאות המייצגות (תרשים משלים 21) הם תרשימי העמודות המתקבלים המראים את המספרים הכוללים (משמאל) והעוצמות (מימין) של אינטראקציות מוסקות בתאים המרכיבים פצעי D1 ו-D14, עם מספר גבוה יותר של אינטראקציות ב-D14 לעומת עוצמות יחסיות גבוהות יותר של אינטראקציות ב-D1. בשלבים 6.15 ו-6.16, נעשה שימוש בשתי פונקציות כדי להמחיש את עוצמת האינטראקציה הדיפרנציאלית בין תא לתא בין כל סוג תא כאשר הפצע עובר מיום 1 ליום 14 עם התוצאות המייצגות שלהן, הראשונה היא תרשים מעגל (שלב 6.15, תרשים משלים 22) והשני הוא מפת חום (שלב 6.16, תרשים משלים 23), כאשר אינטראקציות מוגברות ב-D14 בהשוואה ל-D1 מוצגות באדום, ואלה שירדו מוצגות בכחול. כצפוי, אינטראקציות בתיווך נויטרופילים ומקרופאגים מוגברות ב-D1, ואינטראקציות בתיווך פיברובלסטים מוגברות ב-D14. בשלב 6.17, פונקציית הדירוג משמשת ליצירת עלילה המדרגת את התרומות היחסיות של מסלולים בודדים לאינטראקציות תא-תא עם פיברובלסטים כתאי מקור ב-D14 בהשוואה ל-D1, והתוצאות המייצגות (תרשים משלים 24) מציגים את תרשים הדירוג המתקבל כאשר D1 מיוצג למעלה באדום ו-D14 בחלק התחתון בכחול, כאשר מספר מסלולים מיוצגים באופן בלעדי ב-D1 או D14 ורבים אחרים מראים שיפוע הפעלה. לבסוף, בשלב 6.18, נעשה שימוש בשתי פונקציות עלילת בועות כדי להראות את התרומות היחסיות של זוגות בודדים של קולטני ליגנד במסלול איתות הקולגן עם פיברובלסטים כתאי מקור ב-D14 בהשוואה ל-D1, עם התוצאות המייצגות המתאימות (תרשים משלים 25) המראה עלייה (משמאל) וירידה בזוגות איתות (מימין) ב-D14 בהשוואה ל-D1 על פני האינטראקציות הרבות בין תאים על ציר ה-x. כצפוי, לפיברובלסטים היו הרבה יותר אינטראקציות מוגברות בין זוג ליגנד-קולטן יוצא על פני מספר תאי מקלט בפצעי D14 בהשוואה לפצעי D1, שם התקשורת הייתה מוגבלת יותר כלפי נויטרופילים ומקרופאגים במהלך השלב הדלקתי.

החל משיטה #7, הפרוטוקול עובר דרך השלבים לשילוב שני מערכי נתונים של ריפוי פצעים חד-תאיים באמצעות Seurat. הפרוטוקול מתאר תחילה את השלבים למיזוג שתי קבוצות של מערכי הנתונים של תא בודד שפורסמו והחלת זרימת העבודה הסטנדרטית של Seurat על מערך הנתונים הממוזג (שלבים 7.1-7.4). בשלב 7.5, פונקציית העלילה הממדית משמשת להמחשת עלילת UMAP על פי מספרי אשכול ואצווה של מערך הנתונים הממוזג אך עדיין לא משולב של ריפוי פצעים. התוצאות המייצגות משלב זה (איור משלים 26) הן עלילות UMAP המדמות את ההתפלגות של אשכולות Seurat (משמאל) ומספרי אצווה (מימין), מה שמראה כי לא נראה שיש השפעות אצווה משמעותיות עבור שני מערכי הנתונים הללו לפני שילוב הנתונים. לאחר מכן, הפרוטוקול מבצע אינטגרציה של נתונים באמצעות שיטת RPCA וזרימת העבודה של Seurat למעקב של מערך הנתונים המשולב (שלבים 7.7-7.8). בשלב 7.9, פונקציית העלילה הממדית משמשת להמחשת עלילת UMAP על פי מספרי אשכול ואצווה של מערך הנתונים המשולב של ריפוי פצעים. התוצאות המייצגות משלב זה (איור משלים 27) הן עלילות UMAP המדמות את ההתפלגות של אשכולות Seurat (משמאל) ומספרי אצווה (מימין), מה שמראה שכעת הייתה חפיפה גדולה עוד יותר בין שתי הקבוצות על פני אשכולות שונים. התוצאות מראות גם את הופעתו של אשכול נוסף בעקבות אינטגרציה של הנתונים, מה שעשוי להצביע על היכולת המוגברת לזהות תת-סוגים של תאים בעלי פוטנציאל משמעותי לאחר בקרת ההשפעות הטכניות של אצוות נתונים.

figure-results-1
איור 1: תרשים UMAP המציג את כל התאים במערך הנתונים מקובצים סביב 8 קבוצות אשכולות עיקריות מקודדות בצבע. תוצאות שהתקבלו ממחשב עם Windows (משמאל) ו-MacOS (מימין). נתון זה מתאים לשלב 3.5. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-2
איור 2: עלילת UMAP המציגה את כל התאים במערך הנתונים מפוזרים בהתאם למקור הזמן/מרחב שלהם, ללא אשכולות נראים לעין בהתאם לביאור הזמן/מרחב. נתון זה מתאים לשלב 3.6. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-3
איור 3: צילומי מסך חתוכים של יציאות EnrichR, המציגים את סוגי התאים המועשרים המובילים עבור כל אשכול תאים. נתון זה מתאים לשלב 3.13. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-4
איור 4: תרשים UMAP המציג את כל התאים במערך הנתונים מקובצים סביב סוגי התאים העיקריים המקודדים בצבע. נתון זה מתאים לשלב 3.15. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-5
איור 5: רשת של עלילות UMAP המציגות את הביטוי הגבוה של הגנים של סמני התאים העליונים בתוך אשכולות סוגי התאים העיקריים. נתון זה מתאים לשלב 3.16. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-6
איור 6: תרשימי נקודות המאשרים את רמת הביטוי הגבוהה של הגנים של סמני התאים העליונים רק בסוגי התאים העיקריים שלהם. נתון זה מתאים לשלב 3.18. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-7
איור 7: תרשים פרופורציה המציג את המספרים היחסיים של סוגי תאים עיקריים בכל קטגוריית DPW. נתון זה מתאים לשלב 3.23. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-8
איור 8: עלילת UMAP המציגה פיברובלסטים במערך הנתונים מקובצים סביב 3 תת-סוגי התאים המקודדים בצבע. נתון זה מתאים לשלב 4.5. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-9
איור 9: תרשימי נקודות המאשרים ביטוי גבוה של סמני תת-סוג פיברובלסטים רק בקטגוריות האשכול שלהם אך מפוזרים למדי על פני קטגוריות DPW. נתון זה מתאים לשלב 4.10. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

figure-results-10
איור 10: תרשימי נקודות המראים את הביטוי הממוצע של מודולי שלב הריפוי העיקריים על פני תאים לכל DPW ולכל סוגי תאים עיקריים. נתון זה מתאים לשלב 5.4. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

איור משלים 1: תוצאות המראות שיש התפלגות אחידה למדי של גנים שזוהו עבור כל ברקוד, מה שחשוב לשלמות מערך הנתונים ולניתוח במורד הזרם של נקודות זמן של ריפוי פצעים. נתון זה מתאים לשלב 2.6.11. אנא לחץ כאן להורדת איור זה.

איור משלים 2: תרשימי פיזור המראים שיש מספר תאים עם תוכן מיטוכונדריאלי גדול, אשר מתאם עם ספירת RNA נמוכה --- אלה תאים מתים או גוססים. נתון זה מתאים לשלב 2.10. אנא לחץ כאן להורדת איור זה.

איור משלים 3: תרשימי פיזור המראים כי התפלגות הגנים שזוהו ואחוז ה-RNA המיטוכונדריאלי לתא היא כעת נורמלית יותר, מה שמפנה את הדרך לניתוחים חזקים במורד הזרם. נתון זה מתאים לשלב 2.12. אנא לחץ כאן להורדת איור זה.

איור משלים 4: תרשים כינור המראה כי ישנם מספר תאים עם ציון כפול גבוה יחסית, וכי 0.25 נראה כחתך טבעי, שמעליו יש אוכלוסייה של כפילים סבירים. נתון זה מתאים לשלב 2.15. אנא לחץ כאן להורדת איור זה.

איור משלים 5: תרשים מרפק המראה שחלק גדול מהשונות העיקרית מתרחשת ב-13 הממדים הראשונים. נתון זה מתאים לשלב 3.2. אנא לחץ כאן להורדת איור זה.

איור משלים 6: תרשים נקודות המאשר את רמת הביטוי הגבוהה של הגנים של סמני התא העליונים רק באשכולות הסורה שלהם. נתון זה מתאים לשלב 3.17. אנא לחץ כאן להורדת איור זה.

איור משלים 7: עלילת UMAP המציגה את הלוקליזציה של הערות מהלך זמן הפצע על פני מערך הנתונים של ריפוי הפצע. נתון זה מתאים לשלב 3.20. אנא לחץ כאן להורדת איור זה.

איור משלים 8: תרשים פרופורציה המציג את המספרים היחסיים של תאי DPW בכל קטגוריה של סוג תא עיקרי. נתון זה מתאים לשלב 3.22. אנא לחץ כאן להורדת איור זה.

איור משלים 9: תרשים מרפק המראה שחלק גדול מהשונות העיקרית במערך הנתונים של הפיברובלסטים מתרחש בתוך 9 הממדים הראשונים. נתון זה מתאים לשלב 4.2. אנא לחץ כאן להורדת איור זה.

איור משלים 10: עלילת UMAP המציגה פיברובלסטים במערך הנתונים המופצים לאורך כל הדרך על פי ביאור ה-DPW שלהם. נתון זה מתאים לשלב 4.6. אנא לחץ כאן להורדת איור זה.

איור משלים 11: תרשים נקודות המאשר ביטוי גבוה של סמני תת-סוג פיברובלסטים בעיקר באשכול הפיברובלסטים המקורי. נתון זה מתאים לשלב 4.11. אנא לחץ כאן להורדת איור זה.

איור משלים 12: תרשים פרופורציה המציג את המספרים היחסיים של תת-סוגים של פיברובלסטים בכל קטגוריית DPW. נתון זה מתאים לשלב 4.12. אנא לחץ כאן להורדת איור זה.

איור משלים 13: תרשים פרופורציה המציג את המספרים היחסיים של פיברובלסטים על פני DPW בכל תת-סוג פיברובלסטים. נתון זה מתאים לשלב 4.13. אנא לחץ כאן להורדת איור זה.

איור משלים 14: תרשימי פיזור המראים את עוצמת האינטראקציות הנכנסות (ציר ה-y) והיוצאות (ציר ה-x) עבור סוגי התאים העיקריים בנקודות הזמן של היום הראשון (D1, משמאל) והיום ה-14 (D14, מימין). נתון זה מתאים לשלב 6.4. אנא לחץ כאן להורדת איור זה.

איור משלים 15: תרשימי מעגל המראים את אינטראקציות איתות מסלול הקולגן המוסקות בין כל סוגי התאים בכל קטגוריית DPW. נתון זה מתאים לשלב 6.7. אנא לחץ כאן להורדת איור זה.

איור משלים 16: דיאגרמות אקורדים המציגות את אינטראקציות איתות מסלול הקולגן המוסקות בין כל סוגי התאים בכל קטגוריית DPW. נתון זה מתאים לשלב 6.8. אנא לחץ כאן להורדת איור זה.

איור משלים 17: דיאגרמות אקורדים המציגות את אינטראקציות איתות מסלול הקולגן המוסקות עם פיברובלסטים כתאי מקור בכל קטגוריית DPW. נתון זה מתאים לשלב 6.9. אנא לחץ כאן להורדת איור זה.

איור משלים 18: תרשימי בועות המראים את התרומות המוסקות של כל זוג קולטני ליגנד במסלול הקולגן המאותתות עם פיברובלסטים כתאי מקור בכל קטגוריית DPW. נתון זה מתאים לשלב 6.10.1. אנא לחץ כאן להורדת איור זה.

איור משלים 19: דיאגרמות אקורדים המציגות את התרומות המוסקות של כל זוג קולטני ליגנד במסלול הקולגן המאותתות עם פיברובלסטים כתאי מקור בכל קטגוריית DPW. נתון זה מתאים לשלב 6.10.2. אנא לחץ כאן להורדת איור זה.

איור משלים 20: דיאגרמות אקורדים המציגות את האינטראקציות המוסקות של קולטני ליגנד Col1a1-Cd44 בין כל סוגי התאים בכל קטגוריית DPW. נתון זה מתאים לשלב 6.12. אנא לחץ כאן להורדת איור זה.

איור משלים 21: תרשימי עמודות המראים את המספר (משמאל) והעוצמה (מימין) של האינטראקציות המוסקות בפצעי היום הראשון והיום ה-14. נתון זה מתאים לשלב 6.14. אנא לחץ כאן להורדת איור זה.

איור משלים 22: תרשים מעגל המראה את עוצמת האינטראקציה הדיפרנציאלית בין תא לתא בין כל סוג תא כאשר הפצע עובר מיום 1 (כחול) ליום 14 (אדום) DPW. נתון זה מתאים לשלב 6.15. אנא לחץ כאן להורדת איור זה.

איור משלים 23: מפת חום המציגה את עוצמת האינטראקציה הדיפרנציאלית בין תא לתא בין כל סוג תא כאשר הפצע עובר מיום 1 (כחול) ליום 14 (אדום) DPW. נתון זה מתאים לשלב 6.16. אנא לחץ כאן להורדת איור זה.

איור משלים 24: תרשים דירוג המציג את התרומות היחסיות של מסלולים בודדים לאינטראקציות תא-תא בין פיברובלסטים וסוגי תאים אחרים ביום 1 לעומת יום 14 DPW. נתון זה מתאים לשלב 6.17. אנא לחץ כאן להורדת איור זה.

איור משלים 25: תרשימי בועות המראים את התרומות היחסיות של זוגות בודדים של קולטני ליגנד במסלול איתות הקולגן עם פיברובלסטים כתאי מקור ביום 1 לעומת יום 14 DPW. נתון זה מתאים לשלב 6.18. אנא לחץ כאן להורדת איור זה.

איור משלים 26: עלילות UMAP המציגות התפלגות של אשכולות Seurat (משמאל) ומספרי אצווה (מימין) לפני שילוב נתונים. נתון זה מתאים לשלב 7.5. אנא לחץ כאן להורדת איור זה.

איור משלים 27: תרשימי UMAP המראים התפלגות של אשכולות Seurat (משמאל) ומספרי אצווה (מימין) לאחר שילוב נתונים. נתון זה מתאים לשלב 7.9. אנא לחץ כאן להורדת איור זה.

קובץ משלים 1: JoVE_Rscript.R: קובץ Script של קוד R ראשי, הכולל את כל השלבים וההסברים המתוארים עבור כל חלקי הפרוטוקול. אנא לחץ כאן להורדת קובץ זה.

תיק משלים 2: JoVE_PhaseSpecificGenes.txt. קובץ טקסט מופרד באמצעות טאבים, המכיל את רשימות הגנים שנטענו בשלב 5.1 של הפרוטוקול. אנא לחץ כאן להורדת קובץ זה.

תיק משלים 3: JoVE_Rscript_b3.R. קובץ סקריפט קוד R משלים, הכולל את כל השלבים וההסברים הנדרשים לניתוח אצווה #3 של מערך הנתונים לשימוש בשלב 7.1 של הפרוטוקול. אנא לחץ כאן להורדת קובץ זה.

טבלה משלימה 1: JoVE_DEGs_cellMarkers.xlsx. Excel, המכיל את הפלט המלא של גנים מדורגים בעלי ביטוי דיפרנציאלי המשמשים בשלב 3.10 של הפרוטוקול. אנא לחץ כאן להורדת טבלה זו.

טבלה משלימה 2: חמשת הגנים המווסתים והמבוטאים המובילים עבור כל אשכול seurat. אנא לחץ כאן להורדת טבלה זו.

Discussion

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

בפרוטוקול זה, RStudio משמש להפעלת שורות קוד שנקבעו המאפשרות ניתוח בסיסי של מערך נתונים מורכב של תא בודד באמצעות Seurat. מוצגות מספר שיטות הרלוונטיות למחקר ריפוי פצעים, כולל התקנת סביבת קידוד R, הורדת מערך נתונים לריפוי פצעים של תא בודד שפורסם בעבר, ביצוע שלבי בקרת איכות קריטיים ותהליכי עבודה סטנדרטיים של ניתוח תא בודד כולל הדמיות, הערות סוג תא עיקרי, ניתוחי תת-סוג תא וניתוחים אינטגרטיביים באמצעות Seurat, וביצוע ניתוחי אינטראקציה בין תא לתא באמצעות CellChat.

השיטות המוצגות כאן הן וינייטות פשוטות של זרימות עבודה טיפוסיות לניתוח תא בודד באמצעות R וחבילות הקוד הפתוח הפופולריות שלה, Seurat21 ו-CellChat22. ואכן, זרימת העבודה היא רק דוגמה אחת לסוג הניתוח שניתן לבצע עם מערך נתונים מורכב של ריפוי פצעים חד-תאיים. השינויים האפשריים בשיטה זו הם כמעט אינסופיים, כאשר האיפוק היחיד הוא החקירה המדעית הספציפית של המשתמש. לדוגמה, המשתמש עשוי לשנות חלק מהפרמטרים המרכזיים, כגון סוגי תאים ונקודות זמן, בהתאם לשאלות המחקר שהוא עשוי לרצות לשאול על מערך נתונים זה. המחברים גם מקווים שהמשתמש ירגיש מספיק בנוח להתאים את זרימת העבודה הזו למערך הנתונים של התא הבודד המעניין אותו; עם זאת, יש לנקוט בזהירות בעת שימוש בזרימת עבודה זו כדי לנתח מערכי נתונים אחרים, מכיוון שכל ניסוי עלול להפיץ בעיות טכניות והכנה לדגימות לנתונים עצמם. לכן, הכרחי שהמשתמש יקרא ויבין את כל פרטי הניסוי לפני שיפרש את התוצאות של כל מערכי נתונים חד-תאיים שפורסמו ונותחו מחדש. חשוב לזכור שכלי ביואינפורמטיקה הם שיטה רבת עוצמה לחקר תהליכים ביולוגיים ויצירת השערות, וכי כל פרשנות ביולוגית ביקורתית של תוצאות חייבת להיות מאומתת בניסויי המשך.

לאורך הפרוטוקול, שים לב שעשויים להתבצע שינויים גדולים באזורים מסוימים בזרימת העבודה כדי לבצע משימות אחרות. עם זאת, הפרטים של כל השילובים האפשריים של שינויים בזרימת העבודה הם מעבר להיקף של כתב יד זה. לדוגמה, הרזולוציה המשמשת לאשכול תאים והממדים המשמשים לניתוח UMAP הם בהכרח סובייקטיביים, והכלים המוצגים כאן מאפשרים הן ניתוחים בקנה מידה גדול (כפי שהודגם כאן עבור סוגי תאים עיקריים מוגדרים בהרחבה) והן ניתוחים ספציפיים מאוד שיכולים לכלול תת-אשכולות של תאים לתת-אוכלוסיות נדירות יותר בתוך מערך הנתונים הגדול יותר. למידע נוסף על היבט זה של שיטת הניתוח של תא בודד, ולפרטים על כל הפרמטרים האחרים שעשויים להשתנות בצנרת הניתוח של תא בודד, המחברים מפנים את המשתמש לפרסומי Seurat21,26 ולאתר (https://satijalab.org/seurat/), שם מחברי הכלי המתפתח הזה מספקים הסברים מעמיקים, וינייטות והדרכות.

כתב יד זה הציג כמה מהכלים המצוטטים והמשומשים ביותר בספרות התעתיק של תא בודד, כלומר Seurat21 ו-CellChat22, לניתוחי אינטראקציה בין תא בודד ותא לתא, בהתאמה. עם זאת, קיימים כלים אחרים המבצעים פונקציות דומות בדרכים שונות במקצת. לניתוח מערכי נתונים של תא בודד, ישנם Scran27, Scater 28 ו-ScanPy29 מבוסס Python, המשתמשים בשיטות שונות לשילוב מערכי נתונים25. בפרוטוקול זה הודגמה הערות ידניות של סוגי תאים, המסתמכות על שיקול הדעת של המשתמש לפירוש העשרת סמני תאי אשכול, אך כיום קיימים כלים שונים המאפשרים סיווג אוטומטי של סוגי תאים, כגון SingleR30 ו-scGate31, בין היתר. עבור ניתוחי תקשורת תא-תא, CellChat הודגם בפרוטוקול זה, אך קיימים כלים אחרים להערכת תקשורת תא-תאי, כולל CellPhoneDB32, Cytotalk33 ומאגרי נתונים אחרים של קולטני ליגנד המיושמים במסגרת הקונצנזוס של LIANA (מסגרת קולטני LIgand)34. כל כלי הביואינפורמטיקה הם ייחודיים ומגיעים עם מוזרויות משלהם ופרמטרים הניתנים לשינוי. לכן, חשוב למשתמש לקרוא בעיון את התיעוד המשויך לכל כלי על מנת להבין את הניואנסים שלו לפני פירוש כל פלט שנוצר מהשימוש בהם. לבסוף, לא משנה באיזה כלי ביואינפורמטיקה משתמשים, חשוב לזכור שכלים כאלה מתפתחים ללא הרף ושגרסאות שונות של החבילות עשויות להניב תפוקות שונות.

ב-R, התחביר הוא קריטי, וסימני פיסוק, מרכאות, סוגריים או אפילו אות שגויה יגרמו לשגיאה. לכן, חיוני למשתמש לשים לב לפרטים בעת הקלדת קוד ולהיות מודע במיוחד בעת העתקת שורות קוד על מנת להתאימו לשאלות מדעיות ומערכי נתונים חדשים. לפתרון בעיות בשגיאות הספציפיות שאדם עלול להיתקל בהן, המחברים ממליצים פשוט להעתיק ולהדביק את הודעת השגיאה במנוע החיפוש המועדף על המשתמש ולעיין בתוצאות מפורומים ביואינפורמטיים כגון GitHub ו-Stack Overflow, שכן השגיאות הנפוצות ביותר כבר נענו ככל הנראה על ידי משתמש מתקדם בעל ידע. בפורומים מסוימים, התשובות המוצלחות ביותר 'מצביעות בעד' על ידי משתמשים אחרים שמצאו את הפתרון הטוב ביותר לבעיה. המשתמש חייב להיזהר לא פשוט להעתיק ולהדביק שורות קוד שהוא מצא באינטרנט למחשב שלו (במיוחד אם הפתרון דורש שינוי הגדרות המערכת שלו מחוץ לשפת התכנות R), מכיוון שיש סיכוי שתוכנות כאלה עלולות להיות זדוניות. שיטה מתפתחת ומרגשת לפתרון בעיות של שגיאות קידוד היא שימוש במודלים רבי עוצמה של בינה מלאכותית בשפה גדולה כמו ChatGPT של OpenAI, Copilot של מיקרוסופט או Gemini של גוגל. מודלים אלה הוכיחו את עצמם כשימושיים במיוחד עבור הנדסת תוכנה בכלל ופתרון בעיות בפרט. לשם כך, המשתמש יכול להעתיק ולהדביק שורות שלמות של הקוד שלו לאחר מתן הנחיה פשוטה לצ'אטבוט לגבי כוונת המשתמש לגבי הקוד. האזהרה הרגילה קיימת שמודלים אלה אינם חסינים מטעויות, וייתכן שהמשתמש יצטרך לנסות מספר הנחיות על מנת ליצור תשובה המתאימה לפתרון הבעיה.

Disclosures

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

למחברים אין ניגודי אינטרסים לחשוף.

Acknowledgements

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

המעבדה של M.S. Wietecha קיבלה מימון ממענק ה-NIH/NIGMS R35-GM154921, מענק המחקר של האגודה לריפוי פצעים והמחלקה לביולוגיה אוראלית במכללת UIC לרפואת שיניים.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
מחשב נייד או שולחנילא ישיםלא ישיםמריץ Windows או MacOS 
Rלא ישיםגירסה 4.4.1להורדה בחינם מ-https://cran.rstudio.com/
סטודיותוכנת פוזיט, PBCגרסה 2024.09.0להורדה בחינם מ-https://posit.co/download/rstudio-desktop/
אופיס אקסלמיקרוסופטכל גירסהלניתוח נתוני טבלה
דפדפן אינטרנטלא ישיםלא ישיםלניווט לאתרי אינטרנט
<חבילות חזק>R<חזק>מאגר<חזק>גרסה
כלי פיתוחקראן2.4.5
READXLקראן1.4.3
אופןXlsxקראן4.2.7.1
טידיוורסקראן2.0.0
scCustomizeקראן2.1.2
ביוק מנג'רמוליכים ביולוגיים1.30.25
NMFמוליכים ביולוגיים0.28
מפת חום מורכבתמוליכים ביולוגיים2.20.0
שכנים ביולוגייםמוליכים ביולוגיים1.22.0
ניסוי יחידמוליכים ביולוגיים1.26.0
מעגלמוליכים ביולוגיים0.4.16
edgeRמוליכים ביולוגיים4.2.1
scDblFinderמוליכים ביולוגיים1.18.0
סאוראטקראן5.1.0
סל צ'אטגיטהאב2.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