Simular una calculadora simple
Los simuladores de lectura se utilizan ampliamente dentro de la comunidad de investigación para crear conjuntos de datos sintéticos y simulados para el análisis. En este artículo, presentaré algunos simuladores de lectura de uso común propuestos recientemente.
Los simuladores de lectura se utilizan ampliamente en la comunidad de investigación para crear conjuntos de datos completos y simulados para el análisis. En este artículo, presentaré algunos simuladores de lectura propuestos recientemente y de uso común.
Secuenciación y lectura de ADN
Si se ha encontrado con mi artículo anterior sobre Análisis de datos de secuencia de ADN , es posible que haya leído sobre la secuenciación de ADN. La secuenciación es el proceso que determina el orden preciso de los nucleótidos de una determinada molécula de ADN. Podemos determinar el orden de las cuatro bases adenina , guanina , citosina y timina , en una hebra de ADN. La secuenciación de ADN se utiliza para determinar la secuencia de genes individuales, cromosomas completos o genomas completos de un organismo.
Si ha leído mi artículo anterior sobre el análisis de datos de secuencias de ADN , es posible que haya leído sobre la secuenciación de ADN. La secuenciación es el proceso de determinar la secuencia precisa de nucleótidos en una molécula de ADN determinada. Podemos determinar el orden de las cuatro bases de adenina , guanina , citosina y timina en la cadena de ADN. La secuenciación de ADN se utiliza para determinar la secuencia de un solo gen, un cromosoma completo o un genoma completo de un organismo.
Se utilizan máquinas especiales conocidas como máquinas de secuenciación para extraer secuencias cortas de ADN aleatorias de un genoma particular que deseamos determinar ( genoma objetivo ). Las tecnologías actuales de secuenciación de ADN no pueden leer un genoma completo a la vez. Lee piezas pequeñas de entre 100 y 30.000 bases, según la tecnología utilizada. Estas breves piezas se llaman lecturas .
Se utiliza una máquina especial llamada secuenciador para extraer secuencias de ADN cortas aleatorias del genoma específico ( genoma objetivo ) que queremos determinar . La tecnología actual de secuenciación de ADN no puede leer un genoma completo a la vez. Dependiendo de la tecnología utilizada, puede leer pequeños fragmentos entre 100 y 30.000 bases. Estos pequeños fragmentos se denominan lecturas .
Leer simuladores
Es posible que las máquinas de secuenciación no estén disponibles como deseamos y es posible que no podamos obtener muestras del mundo real para secuenciar. Aquí es donde los simuladores de lectura resultan útiles para fines de investigación. Los simuladores de lectura pueden imitar máquinas de secuenciación para simular lecturas. Tienen modelos estadísticos predefinidos para imitar las tasas de error relevantes para las máquinas de secuenciación en particular. Además, también podemos proporcionar nuestros propios modelos de error (diferentes tasas de inserciones, eliminaciones y sustituciones).
Es posible que las máquinas de secuenciación no hagan lo que queremos, y es posible que no podamos captar muestras del mundo real para secuenciar. Aquí, el simulador de lectura se puede utilizar con fines de investigación. El simulador de lectura puede imitar un secuenciador para simular la lectura. Tienen modelos estadísticos predefinidos que pueden simular la tasa de error asociada con un secuenciador en particular. Además, también podemos proporcionar nuestro propio modelo de error (diferentes ratios de inserción, eliminación y reemplazo).
Estimación de la cobertura de secuenciación
La cobertura de secuenciación se define como el número medio de lecturas que cubre cada base del genoma de referencia. Estimar la cobertura de secuenciación es muy importante cuando está simulando conjuntos de datos. La ecuación de cobertura se define como sigue.
La cobertura de secuenciación se define como el número medio de lecturas que cubren cada base del genoma de referencia. Al simular conjuntos de datos, es importante estimar la cobertura de secuenciación . La ecuación de cobertura se define como sigue.
C = LN / G
C = LN / G
- C es la cobertura de secuenciación
- G es la longitud del genoma
- L es la longitud de lectura
- N es el número de lecturas
Por ejemplo, si tiene un genoma de 5 Mbp de longitud y simula 1.000.000 de lecturas de HiSeq 2000 (la longitud de lectura es de 100 pb), obtendremos una cobertura de secuenciación de la 20x
siguiente manera.
Por ejemplo, si la longitud de su genoma es de 5 Mbp y se simulan 1.000.000 de lecturas de HiSeq 2000 (la longitud de lectura es de 100 pb), obtendremos la siguiente 20x
cobertura de secuenciación.
C = LN / G = 100 * 1,000,000 / 5,000,000 = 20x
Aquí, al menos cada posición del genoma de referencia está cubierta por 20 lecturas.
Aquí, al menos cada posición del genoma de referencia está cubierta por 20 lecturas.
Estimando la abundancia
La abundancia de una especie en un conjunto de datos se considera como la fracción de lecturas que pertenecen a esa especie. Por ejemplo, si hay un conjunto de datos con 10,000,000 lecturas y 1,000,000 de ellas pertenecen a E. coli , entonces la abundancia de E. coli será 0.1.
La abundancia de especies en el conjunto de datos se considera como la puntuación de lecturas que pertenecen a esa especie. Por ejemplo, si hay lecturas con un conjunto de datos de 10,000,000 y sus millones pertenecen a E. coli , entonces la abundancia de E. coli es 0.1.
Tenga en cuenta que la cobertura y la abundancia no son lo mismo.
Tenga en cuenta que la cobertura y la abundancia son diferentes.
Simuladores de lectura corta
Con la popularidad de las tecnologías de secuenciación de próxima generación (NGS), se han desarrollado muchos simuladores de lectura NGS. Actualmente, muchos de los populares simuladores de lectura corta están diseñados para simular lecturas que imitan muchas plataformas Illumina, 454 y SOLiD. A continuación se enumeran algunos simuladores populares de lectura corta. También se proporcionan enlaces a sus publicaciones.
Con la popularización de la tecnología Next Generation Sequencing (NGS), se han desarrollado muchos simuladores de lectura NGS. Actualmente, muchos simuladores populares de lectura corta están diseñados para simular la lectura de muchas plataformas Illumina, 454 y SOLiD. A continuación se enumeran algunos simuladores populares de lectura corta. También proporciona enlaces a sus publicaciones.
Simuladores de lectura larga
Con los avances en las tecnologías de secuenciación, los científicos han mostrado un interés creciente en el uso de tecnologías de secuenciación de tercera generación (TGS). Actualmente, muchos de los simuladores de lectura larga populares están diseñados para simular lecturas que imitan las dos tecnologías TGS principales; (1) Pacific Biosciences (PacBio) y (2) Oxford Nanopore (ONT) . A continuación se enumeran algunos de los simuladores PacBio y ONT populares y recientemente introducidos. También se proporcionan enlaces a sus publicaciones.
Con el avance de la tecnología de secuenciación, los científicos están cada vez más interesados en utilizar la tecnología de secuenciación de tercera generación (TGS). Actualmente, muchos simuladores de lectura larga populares están diseñados para simular operaciones de lectura que imitan las dos tecnologías TGS principales. (1) Pacific Biosciences (PacBio) y (2) Oxford Nano Kong (ONT) . A continuación se enumeran algunos de los simuladores PacBio y ONT recientemente populares. También proporciona enlaces a sus publicaciones.
Simuladores PacBio ( Simuladores PacBio )
Simuladores ONT ( Simuladores ONT )
InSilicoSeq (InSilicoSeq)
He estado usando mucho InSilicoSeq en mi trabajo y lo encuentro muy intuitivo y fácil de usar. Lo guiaré a través de algunos comandos de muestra para simular lecturas. Puede instalar fácilmente InSilicoSeq usando conda
o pip
.
A menudo uso InSilicoSeq en mi trabajo y lo encuentro muy intuitivo y fácil de usar. Lo guiaré a través de algunos comandos de muestra para simular la lectura. Puede instalar fácilmente InSilicoSeq conda
o pip
.
conda install -c bioconda insilicoseq
OR
pip install InSilicoSeq
Simular lecturas proporcionando el número de lecturas
Simular la lectura proporcionando el número de lecturas
Suponga que tiene un solo genoma de referencia y desea simular 1 millón de lecturas de Illumina MiSeq. A continuación se muestra un comando de muestra que puede ejecutar con InSilicoSeq.
Suponga que tiene un genoma de referencia y desea simular un millón de lecturas de Illumina MiSeq. A continuación se muestran comandos de ejemplo que se pueden ejecutar con InSilicoSeq.
iss generate --model miseq --genomes ref.fasta --n_reads 1M --cpus 8 --output reads
Simular lecturas proporcionando la cobertura
Simular la lectura proporcionando cobertura
Suponga que tiene dos archivos de genoma de referencia ref1.fasta
y ref2.fasta
. Desea simular la 30x
cobertura desde ref1
y 10x
desde ref2
. Deberá crear un archivo separado por tabuladores con el nombre coverages.tsv
y agregar los detalles de cobertura de la siguiente manera.
Suponga que tiene dos archivos de genoma de referencia ref1.fasta
y ref2.fasta
. Quiere simular ref1
30x
cobertura y ref2
10x
cobertura. Deberá crear un archivo delimitado por tabulaciones con el nombre coverages.tsv
y agregar los detalles de cobertura como se muestra a continuación.
red1_id 30
ref2_id 10
ref1_id
y ref2_id
consulte los identificadores de los archivos ref1.fasta
y ref2.fasta
. Si descarga los genomas de referencia de NCBI, las identificaciones consistirán en letras y números y, por ejemplo, pueden tener un aspecto similar a este NC_007712.1
o CP001844.2
. Estos identificadores son números de acceso NCBI proporcionados para cada genoma de referencia.
ref1_id
Y ref2_id
archivos de referencia ref1.fasta
y ref2.fasta
. Si descarga el genoma de referencia de NCBI, el logotipo constará de letras y números, por ejemplo, puede parecer similar a NC_007712.1
o CP001844.2
. Estos identificadores son los números de acceso NCBI proporcionados para cada genoma de referencia.
Ahora puedes simular las lecturas usando el siguiente comando.
Ahora, puede usar el siguiente comando para simular la lectura.
iss generate --model miseq --genomes ref1.fasta ref2.fasta --coverage coverages.tsv --cpus 8 --output reads
Simular lecturas proporcionando abundancia
Simule la lectura proporcionando contenido enriquecido
Suponga que tiene dos archivos de genoma de referencia ref1.fasta
y ref2.fasta
. Desea simular 0.4
abundancia ref1
y 0.6
abundancia ref2
. Tenga en cuenta que la suma de todos los valores de abundancia debe ser 1.0
. De manera similar a la cobertura, deberá crear un archivo separado por pestañas con el nombre abundance.tsv
y agregar los detalles de abundancia de la siguiente manera.
Suponga que tiene dos archivos de genoma de referencia ref1.fasta
y ref2.fasta
. Quieres simular ref1
0.4
abundancia y ref2
0.6
abundancia. Tenga en cuenta que la suma de todos los valores de abundancia debe ser 1.0
. De manera similar a la cobertura, deberá crear un archivo delimitado por tabulaciones abundance.tsv
y agregar los detalles de abundancia como se muestra a continuación.
red1_id 0.4
ref2_id 0.6
Ahora puedes simular las lecturas usando el siguiente comando.
Ahora, puede usar el siguiente comando para simular la lectura.
iss generate --model miseq --genomes ref1.fasta ref2.fasta --abundance abundance.txt --cpus 8 --output reads
Puede leer más detalles en la documentación de InSilicoSeq.
Puede leer más detalles en la documentación de InSilicoSeq.
PBSIM (PBSIM)
PBSIM es un simulador de lecturas PacBio que proporciona simulaciones basadas en muestras y en modelos. Lo guiaré a través de algunos comandos de muestra para simular lecturas usando PBSIM.
PBSIM es el simulador de lectura PacBio, que proporciona simulación basada en muestras y en modelos. Lo guiaré a través de algunos comandos de muestra para simular la lectura usando PBSIM.
Basado en el modelo de simulación ( Modelo basado en la simulación )
Para la simulación basada en modelos, puede ejecutar el siguiente comando.
Para la simulación basada en modelos, puede ejecutar los siguientes comandos.
pbsim --data-type CLR --depth 100 --length-min 10000 --length-max 20000 --prefix test --model_qc data/model_qc_clr ref.fasta
El modelo se puede encontrar en la carpeta PBSIM PBSIM-PacBio-Simulator/data/model_qc_clr
. El tipo de datos CLR se refiere a Continuous Long Read, que simula tasas de error largas y altas. El otro tipo de datos CCS se refiere a Lectura de consenso circular que simula tasas de error cortas y bajas.
El modelo se puede encontrar en la carpeta PBSIM PBSIM-PacBio-Simulator/data/model_qc_clr
. El tipo de datos CLR se refiere a lecturas largas y continuas , que simulan tasas de error largas y tasas de error altas. Otro tipo de datos, CCS, se refiere a la " lectura de consenso circular" , que puede simular tasas de error cortas y tasas de error bajas.
Simulación basada en muestreo
Para la simulación basada en muestreo, puede ejecutar el siguiente comando.
Para la simulación basada en muestras, puede ejecutar el siguiente comando.
pbsim --data-type CLR --depth 100 --sample-fastq sample/sample.fastq sample/sample.fasta
El archivo FASTQ de muestra se puede encontrar en la carpeta PBSIM PBSIM-PacBio-Simulator/sample/sample.fastq
. También puede utilizar su propio archivo FASTQ.
Los archivos FASTQ de muestra están disponibles en la carpeta PBSIM PBSIM-PacBio-Simulator/sample/sample.fastq
. También puede utilizar su propio archivo FASTQ.
Puede leer más detalles en la documentación de PBSIM.
Puede leer más detalles en la documentación de PBSIM.
SimLoRD (SimLoRD)
SimLoRD es un simulador de lectura TGS basado en el modelo de error SMRT de Pacific Biosciences. Con frecuencia he usado SimLoRD para simular conjuntos de datos de PacBio para mi trabajo. Lo guiaré a través de algunos comandos de muestra para simular lecturas usando SimLoRD.
SimLoRD es un simulador de lectura TGS basado en el modelo de error SMRT de Pacific Biosciences. A menudo uso SimLoRD para simular el conjunto de datos PacBio para mi trabajo. Lo guiaré a través de algunos comandos de muestra para simular la lectura usando SimLoRD.
Simular lecturas de longitud fija proporcionando el número de lecturas
Suponga que tiene un genoma de referencia y desea simular lecturas de longitud fija con 60x
cobertura. A continuación se muestra un comando de muestra que puede ejecutar con SimLoRD.
Suponga que tiene un genoma de referencia y desea simular la cobertura de 60x
lecturas de longitud fija. A continuación se muestran comandos de ejemplo que se pueden ejecutar con SimLoRD.
simlord --read-reference ref.fasta --coverage 60 --fixed-readlength 5000 output_prefix
Simule lecturas de longitud fija proporcionando la cobertura
Suponga que tiene un genoma de referencia y desea simular 2000 lecturas de longitud fija. A continuación se muestra un comando de muestra que puede ejecutar con SimLoRD.
Suponga que tiene un genoma de referencia y desea simular 2000 lecturas de longitud fija. A continuación se muestran comandos de ejemplo que se pueden ejecutar con SimLoRD.
simlord --read-reference ref.fasta --num-reads 2000 --fixed-readlength 5000 output_prefix
También puede establecer una longitud mínima para las lecturas utilizando el --min-readlength
parámetro durante la simulación. Puede leer más en la documentación de SimLoRD.
También puede utilizar --min-readlength
parámetros para establecer la longitud mínima de lectura durante la simulación . Puede obtener más información en la documentación de SimLoRD.
Pensamientos finales (Pensamientos finales)
Los simuladores de lectura nos han brindado la oportunidad de simular lecturas que van desde cero errores hasta tasas de error muy altas. Además, nos han permitido crear conjuntos de datos sintéticos y simulados que imitan diferentes máquinas de secuenciación y diferentes composiciones de especies.
El simulador de lectura nos brinda la oportunidad de simular lecturas desde cero errores hasta tasas de error muy altas. Además, también nos permiten crear conjuntos de datos sintéticos y simulados que imitan la composición de diferentes secuenciadores y diferentes especies.
Espero que haya encontrado este artículo útil e informativo como punto de partida para el uso de simuladores de lectura. No dude en utilizar estas herramientas para sus proyectos y trabajos de investigación, ya que están disponibles de forma gratuita.
Espero que este artículo le resulte útil para utilizar el simulador de lectura y le proporcione información útil. Puede utilizar estas herramientas de forma gratuita para proyectos y trabajos de investigación.
¡Salud y mantente a salvo!
¡Salud y mantente a salvo!
Puedes leer mis artículos anteriores relacionados con la bioinformática y el análisis de ADN.
Puedes leer mis artículos anteriores sobre bioinformática y análisis de ADN.
Traducido de: https://medium.com/computational-biology/a-simple-introduction-to-read-simulators-bbeff4f0c0c6
Simular una calculadora simple