Un flujo de trabajo completo y universal para el análisis de células individuales, desde los datos hasta la visualización
Antes de comenzar el análisis, puede ser útil tener una discusión sobre el diseño experimental. El problema más obvio es la elección de la tecnología, que se puede dividir a grandes rasgos en:
1. Basado en gotas: 10XGenomics, inDrop, Dropseq
2. Identificador molecular único basado en placas (UMI): CEL-seq, MARS-seq
3. Lecturas basadas en plataforma: Smart-seq2
4. Otros: Sci-RNA-seq, Seq-Well
Cada uno de estos enfoques tiene pros y contras que se han discutido ampliamente en otros lugares (Mereu et al (parative)). De hecho, las tecnologías basadas en gotas se han convertido en el estándar de facto actual debido a su alto rendimiento y bajo costo por celda. Los métodos basados en placas pueden capturar información fenotípica adicional (como la morfología) y son más fácilmente personalizables. Los métodos basados en lectura proporcionan una cobertura completa de la transcripción, lo cual es útil en determinadas aplicaciones (por ejemplo, empalme, mutagénesis del exoma, se prefieren los métodos basados en UMI porque mitigan los efectos del ruido de amplificación por PCR). El método que elija depende de la situación, pero la mayoría de los aspectos de nuestro proceso de análisis a continuación son independientes de la tecnología.
La siguiente pregunta es cuántas células se deben recolectar y con qué profundidad deben secuenciarse. La respuesta corta es "tanto como sea posible". La respuesta larga es que depende del propósito del análisis. Si nuestro objetivo es descubrir subpoblaciones de células raras, entonces necesitamos más células. Si nuestro objetivo es caracterizar diferencias sutiles, entonces necesitaremos una secuenciación más profunda. Actualmente, un estudio informal de la literatura sugiere que un experimento típico con gotas capturará de 10.000 a 100.000 células y secuenciará de 1.000 a 10.000 UMI por célula (normalmente inversamente proporcional al número de células). Los métodos basados en gotas también requieren un equilibrio entre el rendimiento y la tasa bimodal, lo que afecta la verdadera eficiencia de la secuenciación.
Para estudios que involucran múltiples muestras o condiciones, las consideraciones de diseño son las mismas que para los experimentos de secuenciación de ARN en masa. Debe haber múltiples réplicas biológicas para cada condición y las condiciones no deben confundirse con lotes. Tenga en cuenta que las celdas individuales no son unidades repetidas. En cambio, nos referimos a muestras de donantes o cultivos duplicados.
Los datos de secuenciación de experimentos de scRNA-seq deben convertirse en una matriz de expresión que pueda usarse para análisis estadístico. Dada la naturaleza discreta de los datos de secuenciación, generalmente se trata de una matriz de recuento que contiene el número de UMI, o lecturas, asignadas a cada gen en cada célula. El proceso de cuantificación de expresiones generalmente depende de las siguientes técnicas:
1. Para los datos de 10X Genomics, el paquete de software CellRanger proporciona una canalización personalizada para obtener la matriz de recuento. Utiliza STAR para comparar lecturas con un genoma de referencia y luego cuenta la cantidad de UMI únicos asignados a cada gen.
2. Los métodos de pseudoalineación (como los alevines) pueden obtener la matriz de conteo de manera más eficiente. Esto evita la necesidad de un registro preciso, reduciendo así el tiempo de cálculo y el uso de memoria.
3. Al igual que con otros protocolos altamente reutilizables, el paquete scPipe proporciona una canalización más general para procesar datos scRNA-seq. Utiliza Rsubread para comparar lecturas y luego calcular el UMI para cada gen.
4. Para los datos CEL-seq o CEL-seq2, el paquete scruff proporciona un canal de cuantificación especializado.
5. Para los enfoques basados en lectura, a menudo podemos reutilizar la misma canalización que procesa grandes cantidades de datos de RNA-seq.
6. Para cualquier dato que involucre transcripciones de picos, la secuencia de picos debe considerarse parte del genoma de referencia durante la comparación y cuantificación.
Después de la cuantificación, importamos la matriz de recuento a R y creamos un objeto SingleCellExperiment. Esto se puede hacer con métodos básicos como read.table() y luego aplicando la construcción de función SingleCellExperiment(). Alternativamente, para formatos de archivo específicos podemos usar métodos especializados como DropletUtils (para datos 10X) o los paquetes tximport/tximeta (para métodos de pseudoalineación). Dependiendo de la fuente de datos, hay algunas cosas a tener en cuenta:
1. Algunas herramientas de conteo de FUNCIONES informan estadísticas de mapeo (como el número de LECTURAS no alineadas o no asignadas) en una matriz de conteo. Aunque estos valores pueden usarse para el control de calidad, sería engañoso si se consideraran valores de expresión genética. Por lo tanto, debe eliminarse (o al menos trasladarse a colData) antes de realizar más análisis.
2. Tenga cuidado al utilizar la expresión regular ^ ERCC para detectar filas de picos en datos humanos porque los nombres de las filas de la matriz de recuento son símbolos genéticos. La familia de genes ERCC en realidad está presente en anotaciones humanas, por lo que esto conduciría a una identificación errónea de genes como transcripciones de picos. Este problema se puede evitar utilizando una matriz de conteo con identificadores estándar (por ejemplo, Ensembl, Entrez).
En el caso más simple, el flujo de trabajo es el siguiente:
1. Calculamos métricas de control de calidad para eliminar celdas de baja calidad que interferirían con los análisis posteriores. Es posible que estas células hayan resultado dañadas durante el procesamiento o que no hayan sido capturadas por completo mediante el procedimiento de secuenciación. Las métricas comunes incluyen recuentos totales por célula, proporción de lecturas de picos o lecturas mitocondriales y cantidad de CARACTERÍSTICAS detectadas.
2. Convertimos los recuentos en valores de expresión normalizados para eliminar sesgos específicos de las células (como la eficiencia de captura). Esto nos permite realizar comparaciones precisas de células en pasos posteriores, como la agrupación. También realizamos una transformación (generalmente logarítmica) para ajustar la relación media-varianza.
3. Realizamos una selección de características para seleccionar un subconjunto de características de interés para el análisis posterior. Esto se hace modelando las diferencias entre células para cada gen y reteniendo genes altamente variables. El propósito de esto es reducir el esfuerzo computacional y el ruido de genes innecesarios.
4. Utilizamos métodos de reducción de dimensionalidad para comprimir datos y reducir aún más el ruido. Por lo general, utilizamos el análisis de componentes principales para obtener una representación inicial de orden bajo que requiere más esfuerzo computacional antes de aplicar métodos más radicales, como la visualización de incrustación de vecinos estocásticos en forma de T.
5. Agrupamos células en función de la similitud de sus perfiles de expresión (normalizados). El objetivo es obtener agrupaciones empíricamente representativas que puedan utilizarse como estados biológicos distintos. Normalmente explicamos estos agrupamientos identificando genes marcadores expresados diferencialmente entre poblaciones celulares.
Más adelante se analizarán pasos adicionales, como la integración de datos y la anotación de celdas.
Aquí utilizamos el conjunto de datos de retina basado en gotas de Macosko et al (http://bioconductor.org/books/release/OSCA/overview.html#ref-macosko2015highly), que está disponible en scRNAseq. paquete de software. El ejemplo comienza con una matriz de recuento y termina con una agrupación en preparación para la interpretación biológica.