matplotlib 做基于python的一款可视化神器,类似于 ggplot2,它基本能涵盖常见的一些图形。同时得益于强大的python社区支持,这个包的功能也在不断增加。有时候写多了python,再写R,一时半会还想不起代码咋写。同时python中用于统计的包也比较全面,自己对python了解的还是多一些,准备在数据可视化方面用matplotlib

matplotlib支持一些常见的图形例如:

  • 线图;
  • 散点图;
  • 等高线图;
  • 条形图;
  • 柱状图;
  • 3D 图形,
  • 甚至是图形动画等等.
Read more »

A 3D Map of the Human Genome at Kilobase Resolution Reveals Principles of Chromatin Looping

highlight

这篇文章通过改进了Hi-C的实验后,提高了分辨率,并且得到了以下结果:

  1. 将genome中 交互contact domains 的大小定位到185kb左右
  2. 根据组蛋白修饰将compartment细分成6个subcompartment
  3. 在不同组织中鉴定到了~10000个染色质 loops
  4. loops与基因启动子、增强子有关,并且能够促进基因的表达
  5. 在不同细胞和不同物种间,loops有着比较高的保守性
  6. 发现大部分loops与compartment的边界重合现象
Read more »

在使用多线程并没有实质性的提速后,果断放弃了多线程;最后还是使用多进程的方式处理这个50G的大文件

多线程和多进程区别

  1. 进程是分配资源的基本单位;
  2. 线程是系统调度和分派的基本单位。
  3. 属于同一进程的线程,堆是共享的,栈是私有的。
  4. 属于同一进程的所有线程都具有相同的地址空间。
Read more »

血崩!! 今天写完一个多线程读取文件,发现多线程反而比但线程慢多了;最后还是改成了多进程版本。多线程向多进程的转换也非常的方便,

为什么Python多线程反而更慢了?

原因就在于 GIL ,在 Cpython 解释器(Python语言的主流解释器)中,有一把全局解释锁(Global Interpreter Lock),在解释器解释执行 Python 代码时,先要得到这把锁,意味着,任何时候只可能有一个线程在执行代码,其它线程要想获得 CPU 执行代码指令,就必须先获得这把锁,如果锁被其它线程占用了,那么该线程就只能等待,直到占有该锁的线程释放锁才有执行代码指令的可能。

​ 因此,这也就是为什么两个线程一起执行反而更加慢的原因,因为同一时刻,只有一个线程在运行,其它线程只能等待,即使是多核CPU,也没办法让多个线程「并行」地同时执行代码,只能是交替执行,因为多线程涉及到上下文切换、锁机制处理(获取锁,释放锁等),所以,多线程执行不快反慢。

Read more »

俗话说:不怕万一就怕一万一,数据备份真的很重要,经历了一次数据库数据的丢失,现在每次我都小心翼翼!

数据库备份

通常大家都是使用phpmyadmin直接图形化的界面进行数据的导入和导出,在数据库导入的时候要注意,mysql中要含有和你备份的数据库一样的名字,不然会报错

命令行下的mysql备份:

1
mysqldump -u root -p 数据库名 >dump.sql(备份文件以sql为后缀)
Read more »

人以类聚,物以群分。在当今大数据的时代,利用机器学习的方法对大样本、大数据进行量化、根据每个数据的特征值进行分类,打标签;从而挖掘数据的价值,例如商家根据用户群体的分类,和标签定向的推送广告。对数据的聚类有多种方式,其中最经典的就是,基于数据密度和基于数据层次进行聚类。

Read more »

1.PCA的基本原理

主成分分析(Principle component analysis)简称PCA,是常用的降维方法之一。通过将n维的数据集降维到n’低纬度空间;使得降维之后数据集尽可能的代表原数据集同时降维之后的损失尽可能的小。

如图1所示,在R中使用rnorm函数生成正态分布数据集在二维空间的分布;我们希望找到一个维度能够代表数据集在二维空间中的分布特征,而这样的维度有无数种.如何找到最好的那个维度使得数据集经过变换后尽可能的保留原始数据集的特征。

Read more »

在处理特别大的数据的时候,尤其是多重循环。例如对2万个基因进行一个计算,每个基因的计算需要进行1亿次比较。仅仅使用一个主进程进行计算就显得十分吃力;于是学习了python多进程的的处理,极大的缩短了脚本的运行时间。

小猪
Read more »

本文通讯作者

1.研究植物开花和花的发育

2.整合遗传学、基因组学和基因编辑技术研究植物分生细胞发育成花中的分子机制

3.利用新的概念和工具进行遗传改良

冷泉巷实验室:Zachary Lippman

1.主要研究基因组的结构和功能

2.针对大规模生物数据,开发新的算法和软件

3.研究 single molecule sequencing,单细胞数据分析

约翰霍普金斯大学 Michael Schatz

Abstract

结构变异是一种基因组间的序列差别,构成了作物改良和驯化的基础。由于短序列测序技术的限制,分析SVs差异的程度以及量化对性状的影响程度,一直非常困难。通过对100个番茄野生株系使用nannpore测序,与标准基因组比较后鉴定到238490个SVs。结合这些panSv数据以及组织了14份新的参考基因组,表明不同基因型材料间存在大规模的混合,大量的SVs与基因区、cir-regulation区存在交集。与此同时数百个SV-gene表现出基因表达水平的改变,这可能影响数量性状位点。通过结合数量性状和基因组编辑技术,作者发现,多个SVs能够改变基因的剂量和表达水平,从而导致口感、大小、以及产量性状的改变。四个SVs影响3个相关的转录因子,使得一个产量性状的改变。该研究突出了SVs在基因型到表型关系中的作用,强调了在作物改良中的重要性和实用性。

Read more »

Abstract

在真核生物中,基因在RNA聚合酶II的作用下被转录成成mRNA,其中多数时候intron是在转录的过程中被剪切复合体剪切掉。在酵母的long-read sequencing研究中发现,当聚合酶II越过内含子时,剪切随即发生。本文基于Nanopore测序技术,绘制了结合在染色质上的RNA图谱,与此同时能够在全基因组范围检测剪切状态、聚合酶II的位置、多聚腺苷酸化。通过分析发现,在聚合酶II越过3‘剪切位点1Kb后,仍旧有超过半数的intron仍旧保持未剪切的状态;相比于酵母,植物中的剪切速率慢的多。许多全长的chromatin-bound RNA在多聚腺苷化后,仍旧包含有未剪切的内含子。而这些内含子在细胞质中几乎是不存在的,对nonsense-mediate decay具有抵抗力,表明这些RNA是在转录完成后、被释放到细胞质之前完成剪切的;作者给这类intron下了一个定义,post-transcriptionally splice intron pts intron.对来自公共数据库中6500份RNA-sequencing分析后,发现pts intron的剪切依赖于剪切相关蛋白PRMT5SKIP同时又受到各种环境信号的影响。在拟南芥中大多数内含子保留事件是发生在pts introns,表明pts intron是内含子保留事件的主要来源,也可能是机体产生有功能的mRA的一种快速响应机制。

Read more »