4 research outputs found

    Bioinformatic pipelines in Python with Leaf

    Get PDF

    Progression of RNA-sequencing to single-cell applications

    Get PDF
    New methods enable new discoveries. My time as a PhD student has run in parallel with the maturation of the RNA-seq method, and I have used it to discover basic properties of gene expression and transcriptomes. My part has been bioinformatics – the computer analysis of biological data. RNA-seq quantifies gene expression for all genes in one experiment, allowing discoveries without prior knowledge, as opposed to single-gene hypothesis testing. When I started my PhD, this was done by microarray followed by qRT-PCR validation, which can be arduous. In contrast to microarrays, RNA-seq quantifies expression with little ambiguity of which gene each expression value corresponds to, and in absolute terms. But at the time, data analysis of RNA-seq was full of unknowns and there were little software available. Nowadays, partly the result of my work, the data analysis is much less complicated, and RNA-seq can be performed on diminutive samples, down to single cells, which was not viable using microarrays. My first study (Paper I) used one of the very first RNA-seq datasets to study general features of transcriptomes, such as mean mRNA length (~1,500 nt) and the number of genes expressed per tissue (~13,000). I also found special features of some tissues: the liver transcriptome is dominated by a few highly expressed gene, brain expresses especially long mRNAs and testis expresses many more genes than other tissues. Following this tissue RNA-seq study, I evaluated a new library preparation method for single-cell RNA-seq (Paper III), developed before the prevalence of single-cell RNA-seq. I used technical replicates to show that the method was accurate and reliable for the more highly expressed genes at single-cell RNA levels, and with input RNA amounts corresponding to >50 cells it produced as good quality data as bulk RNA-seq. Then the method was applied on melanoma cells isolated from human blood, and I listed surface antigen genes that distinguished these circulating tumour cells from other cells in the blood. This single-cell RNA-seq method was then applied on pre-implantation embryo cells (Paper IV). Using first-generation crosses between two mouse strains, I could separate the expression from the maternal and the paternal copies of the genes. I found that 12-24% of the genes express only one of their two copies in any given cell, in a random manner that affects almost all the expressed genes. I also found that the two copies are expressed independently from each other. Finally, I studied Sox transcription factors during neural development (Paper II), combining RNA-seq and microarray data for different cell types with ChIP-seq data for transcription factor binding and histone modifications. I found that Sox proteins bind to the enhancers active in the stem cells where the Sox proteins are active, but also to enhancers specific to subsequent cells in ii development. I also found that different Sox factors bind to much the same enhancers, and that they can induce histone modifications. In conclusion, my work has advanced the RNA-seq method and increased the understanding of transcriptional regulation and output

    Bioinformatic pipelines in Python with leaf

    Get PDF
    Background An incremental, loosely planned development approach is often used in bioinformatic studies when dealing with custom data analysis in a rapidly changing environment. Unfortunately, the lack of a rigorous software structuring can undermine the maintainability, communicability and replicability of the process. To ameliorate this problem we propose the Leaf system, the aim of which is to seamlessly introduce the pipeline formality on top of a dynamical development process with minimum overhead for the programmer, thus providing a simple layer of software structuring. Results Leaf includes a formal language for the definition of pipelines with code that can be transparently inserted into the user’s Python code. Its syntax is designed to visually highlight dependencies in the pipeline structure it defines. While encouraging the developer to think in terms of bioinformatic pipelines, Leaf supports a number of automated features including data and session persistence, consistency checks between steps of the analysis, processing optimization and publication of the analytic protocol in the form of a hypertext. Conclusions Leaf offers a powerful balance between plan-driven and change-driven development environments in the design, management and communication of bioinformatic pipelines. Its unique features make it a valuable alternative to other related tools
    corecore