ManhattanPlot

Manhattan plot in VisualBasic
Github: https://github.com/xieguigang/ManhattanPlot

Manhattan plot

A Manhattan plot is a type of scatter plot, usually used to display data with a large number of data-points - many of non-zero amplitude, and with a distribution of higher-magnitude values, for instance in genome-wide association studies (GWAS).[1] In GWAS Manhattan plots, genomic coordinates are displayed along the X-axis, with the negative logarithm of the association P-value for each single nucleotide polymorphism (SNP) displayed on the Y-axis, meaning that each dot on the Manhattan plot signifies a SNP. Because the strongest associations have the smallest P-values (e.g., 10−15), their negative logarithms will be the greatest (e.g., 15).

It gains its name from the similarity of such a plot to the Manhattan skyline: a profile of skyscrapers towering above the lower level “buildings” which vary around a lower height.

References

  • Gibson, Greg (2010). “Hints of hidden heritability in GWAS”. Nature Genetics. 42 (7): 558–560. doi:10.1038/ng0710-558. PMID 20581876.

    Read More

Share Comments

基于SNP的连锁不平衡分析

一、单核苷酸多态性

1. SNPs概念

SNPs(single nucleotide polymorphisms, SNPs) 指染色体 DNA 序列中的某个位点由于单个核苷酸的变化而引起的多态性,在群体中的频率>1%


Read More

Share Comments

LD值 D' R2 计算

几个遗传学基本概念

  1. 连锁不平衡
  2. linkerd dimorphisms
  3. 单倍型
  4. 基因型的频率是如何计算的?(公式)
  5. 等位基因的频率如何计算出来的?(公式)

连锁不平衡分析在连锁不平衡程度的评估,复杂疾病精细定位以及研究人类的历史和迁移中得到了越来越广泛的应用。连锁不平衡又称等位基因关联(allelic association),其原理其实很简单。假定两个紧密连锁的位点1,2,各有两个等位型(Aa; Bb),那么在同一条染色体上将有四种可能的组合方式:A—B, A—b, a—B, 和a—b。假定等位型A的频率为PaB的频率为Pb,那么如果不存在连锁不平衡(如组成单倍型的等位型间相互独立,随机组合)单倍型A—B的频率就应为PaPb而如果AB是相关联的,单倍型A—B的频率则应为PaPb+DD是表示两位点间LD程度的值。如果位点2上的等位型B与疾病易患性有关,那么将会观察到等位型A的频率在病人群体中高于对照群体。换句话说,等位型A与该疾病性状相关。事实上,可以检测遍布基因组中的大量遗传标记位点,或者候选基因附近的遗传标记来寻找到因为与致病位点距离足够近而表现出与疾病相关的位点,这就是等位基因关联分析或连锁不平衡定位基因的基本思想。

Read More

Share Comments

VisualBasic CLI Pipeline

Example on github Example/PipelineTest

CLI pipeline is the most important language programming feature of the data analysis industry/or server technique as it providing the basically of the analysis workflow automation and language hybrids feature. Almost all of the Linux server tools supports this pipeline feature as nearly all of the management automation on the Linux server is based on the bash scripting.

Here is the pipeline API that provided in VisualBasic language server runtime: Microsoft.VisualBasic.CommandLine.CommandLine, and it makes this CLI pipeline more simple.

API Description
OpenStreamInput(String, String) As System.IO.StreamReader Open file input or std_in device as input
OpenStreamOutput(String) As System.IO.StreamWriter Open file output or std_out device as output

Read More

Share Comments

LDheatmap - An R Function for Graphical Display of Pairwise Linkage Disequilibria between Single Nucleotide Polymorphisms

Abstract

We describe the R function LDheatmap() which produces a graphical display, as a heat map, of pairwise linkage disequilibrium measurements between single nucleotide polymorphisms within a genomic region. LDheatmap() uses the grid graphics system, an alternative to the traditional R graphics system. The features of the LDheatmap() function and the use of tools from the grid package to modify heat maps are illustrated by examples.

Keywords: single nucleotide polymorphisms, linkage disequilibrium, grid graphics.

Read More

Share Comments

OMIM API tools manual

# OMIM_CLI [version 1.0.0.0]

OMIM® - Online Mendelian Inheritance in Man®

Welcome to OMIM®, Online Mendelian Inheritance in Man®. OMIM is a comprehensive, authoritative compendium of human genes and genetic phenotypes that is freely available and updated daily.
The full-text, referenced overviews in OMIM contain information on all known mendelian disorders and over 15,000 genes. OMIM focuses on the relationship between phenotype and genotype.
It is updated daily, and the entries contain copious links to other genetics resources.

This database was initiated in the early 1960s by Dr. Victor A. McKusick as a catalog of mendelian traits and disorders, entitled Mendelian Inheritance in Man (MIM).
Twelve book editions of MIM were published between 1966 and 1998. The online version, OMIM, was created in 1985 by a collaboration between the National Library of Medicine and the William H. Welch Medical Library at Johns Hopkins.
It was made generally available on the internet starting in 1987. In 1995, OMIM was developed for the World Wide Web by NCBI, the National Center for Biotechnology Information.

OMIM is authored and edited at the McKusick-Nathans Institute of Genetic Medicine, Johns Hopkins University School of Medicine, under the direction of Dr. Ada Hamosh.

Copyright® 1966-2016 Johns Hopkins University.

The OMIM® database including the collective data contained therein is the property of the Johns Hopkins University, which holds the copyright thereto.
The OMIM database is made available to the general public subject to certain restrictions. You may use the OMIM database and data obtained from this site for your personal use, for educational or scholarly use, or for research purposes only.
The OMIM database may not be copied, distributed, transmitted, duplicated, reduced or altered in any way for commercial purposes, or for the purpose of redistribution, without a license from the Johns Hopkins University.
Requests for information regarding a license for commercial use or redistribution of the OMIM database may be sent via e-mail to JHTT-Communications@jhmi.edu.

Read More

Share Comments

D3.js制作日期折线图

一、引入文件

1
<script src="http://d3js.org/d3.v3.min.js"></script>

二、创建容器

1
2
3
4
5
6
7
8
9
var margin = {top: 20, right: 20, bottom: 30, left: 50},
width = 590 - margin.left - margin.right,
height = 300 - margin.top - margin.bottom;

var svg = d3.select("body").append("svg")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)
.append("g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");

需要注意的几个尺寸:svg画布的尺寸、chart图片的尺寸、margin值,另外svg的坐标原点是左上角,向右为正,向下为正。这对之后的各种元素的transition很重要。

可以参考一下这篇文章:Margin Convention

Read More

Share Comments

VB.NET 线程池

水是生命之源,计算机资源也一样。

每一线程尤如一滴水,你花一滴,我花一滴,你还一滴,我还一滴,就象游兵散将一样,线程越多,越复杂混乱。而每一个线程创建需要开销,活动的线程也需要开销。过多的线程导致系统内存占用过度或系统资源不足。为了解决线程生命周期开销问题和资源不足问题,创建线程池,让每滴水(线程)纳入统一管理。特别是那些生存期比较短暂的线程。使用线程池执行任务比每次完成一个任务时都创建一个全新的线程,随后又删除掉的做法更有效率。

一、线程池管理

线程池管埋是指在多线程应用程序的初始化过程屮创建线程的一个集合,当需要线程时,为新任务重用这些线程,而不是创建新的线程的过程。这个过程中创建的线程数量通常部是固定的。然而,增加可用的线程数量也是可以的。池中的每个线程都被分派一个任务,当任务完成时,线程就返回线程池中等待下一次分派。

进程池模型

Read More

Share Comments

汉语对现代文明的贡献有多大

汉语是全世界母语人数最多的语言,在中国媒体的报道中,它似乎也是老外最热衷学习的语言。汉语的地位真有中国人想象的那么高吗?

文|刘周岩

据新华社报道,截至 2014 年 3 月,全球汉语学习人数已超过一亿。孔子学院开遍世界、各国中小学生争相学汉语的报道也屡见于国内媒体。似乎今天谁不学汉语,谁就要落后于时代。看起来,汉语已随着中国国力的提升成为除英语外世界上最重要的语言。

可事实真的如此吗?

Read More

Share Comments

Loading More Results From Database Using jQuery Ajax

You might have seen the implementation of Ajax based data loading system at Facebook, Twitter or some other sites. Instead of showing pagination links, we can load data dynamically whenever a load button click. In this article I’ll show you how we can easily adopt this technique to make similar loading page for our web projects using jQuery.

jQuery Load More Data

You may also want to checkout similar tutorial Auto Load More Data On Page Scroll. In my earlier post Simple Ajax Pagination, I have explained how to create Ajax Pagination using jQuery. Here we will be doing precisely the same thing.

load more

Read More

Share Comments