面对未知的前方每个人都可能些许迷茫,但是迷茫归迷茫,可千万不要忘记奋力奔跑。欢迎各位看到本篇内容的学弟学妹以及朋友们,我叫咩小饬,以下内容如有不足欢迎指出。
先说说为什么需要学习linux吧,因为在一个数据时代的今天,我们日常生活中接触到的数据越来越多,然而在很多行业首先你需要处理数据使用计算机运行数据对计算机的要求也是极为苛刻,然而windows与linux最大的差异就是性能问题,目前大火的大数据基本都是在linux系统下运行的,linux系统运行环境适用于数据处理。就这么简单!
cd 打开
./ 运行可执行文件
su 切换用户登录
mv 待移动文件位置 移动后的文件位置
cp 待复制文件位置 复制后的文件位置
rm 此操作为删除命令,后可跟多个参数运行。最基本的有:
rm 文件名
rm 携带参数 文件名或文件夹名称
解压缩命令:
tar -zxvf 压缩包名.tar.gz
debain系统下:
apt-get install 包名
centos系统下:
apt-get install 包名
题外话:
LOCI | 死亡之 ping |
---|---|
nmap扫描 | nmap扫描 |
-- plink
--ped 后跟.ped文件
--map 后跟.map文件
--merga 合并文件命令
--recode 转化文件
--out 输出文件
1. Plink进入D:
2. Cd D:\软件\plink
3. plink --ped 30.ped --map 30.map --recode vcf --out ped_to_vcf --sheep
4. 把要对比的文件选择出来转为TXT格式
注意:30.ped和30.map是要提前准备好的文件转化为ped_to_vcf
plink --ped 30.ped --map 30.map --make-bed --out 1 --sheep
把bed、fam、bim文件放入虚拟机admixture文件夹打开终端
./admixture --cv 30.bed 2k|tee 2.out
plink --file loutput2.bed --pca 3 --sheep
哈代-温伯格定律,也称遗传平衡定律或哈代-温伯格平衡定律,分别在1908年和1909年由英国数学家G·H·哈代(Godfrey Harold Hardy)和德国医生威廉·温伯格(Wilhelm Weinberg)独立证明。在群体遗传学中,哈代-温伯格定律主要用于描述群体中等位基因频率以及基因型频率之间的关系。主要内容为:
“ 一个群体在理想情况(不受特定的干扰因素影响,如非随机交配、天择、族群迁移、突变或群体大小有限),经过多个世代,基因频率与基因型频率会保持恒定并处于稳定的平衡状态。 ”
实际上,总会存在一个或多个干扰因素。因此,哈代-温伯格定律在自然界中是不太可能的。基因的平衡是一种理想状态,并用于测量遗传改变的基准。
最简单的例子是位于单一位点的两个等位基因:显性等位基因记为A而隐性等位基因记为a,它们的频率分别记为p和q。频率(A) = p;频率(a) = q;p + q = 1。如果群体处于平衡状态,则我们可以得到
群体中纯合子AA的频率(AA) = p2
群体中纯合子aa的频率(aa) = q2
群体中杂合子Aa的频率(Aa) = 2pq
推导:
对于二倍体物种,考虑种群中两个独立的等位基因A和a,它们的频率分别是p和q。使用旁氏表推导出形成新基因型的不同方式,其中每一格的值为行与列概率的乘积。
安装: vcftools sudo apt-get install vcftools(debain系统)
解压:
cd 文件位置。
tar zxvf 文件名
vcftools --vcf ped_to_vcf.vcf --weir-fst-pop CL.txt --weir-fst-pop DL.txt --fst-window-size 50000 --fst-window-step 25000 --out CLHDL.Fst
vcftools --vcf ped_to_vcf.vcf --keep HT.txt --window-pi 50000 --out HTPI
vcftools --vcf 1664.vcf --keep locatedsheep.txt --recode --out located
R与绘图吧,说实话吧,人家刘哥喜欢,我并不太感冒。。。。那就。。算了,碍于刘哥面子我就贴个曼哈顿图的两种画法吧。
首先使用cmplot绘图包,绘制曼哈顿图:
s <- read.table("s.txt",header=T)
CMplot(s,type="p",plot.type="c",LOG10=FALSE,outward=TRUE,col=matrix(c("#4DAF4A",NA,NA,"dodgerblue4",
"deepskyblue",NA,"dodgerblue1", "olivedrab3", "darkgoldenrod1"), nrow=3, byrow=TRUE),
chr.labels=paste("Chr",c(1:26),sep=""),threshold=NULL,r=1.2,cir.chr.h=0.5,cir.legend.cex=0.5,
cir.band=1,file="jpg", memo="",dpi=300,chr.den.col="red",file.output=TRUE,verbose=TRUE,
width=5,height=10)
绘图完成。关键是函数里面参数的用法,一句话:多看文档,千万别偷懒,多看文档有益于提高你的变成水平。
首先载入数据:
#载入R包
#install.packages("qqman")
library(qqman)
library(tidyverse)
#查看原始数据
head(gwasResults)
SNP CHR BP P
1 rs1 1 1 0.9148060
2 rs2 1 2 0.9370754
3 rs3 1 3 0.2861395
4 rs4 1 4 0.8304476
5 rs5 1 5 0.6417455
6 rs6 1 6 0.5190959
我们知道Manhattan图实际就是点图,横坐标是chr,纵坐标是-log(Pvalue) ,原始P值越小,-log转化后的值越大,在图中就越高。
原始数据中重要的“元素”都有了 ,我们自己的数据也是只需要这四列就可以了。注意绘制前需要转化一下:
处理原始数据,计算snp位点的累计位置:
1.计算染色体长度
chr_len <- gwasResults %>%
group_by(CHR) %>%
summarise(chr_len=max(BP))
2.计算每条染色体的初始位置
chr_pos <- chr_len %>%
mutate(total = cumsum(chr_len) - chr_len) %>%
select(-chr_len)
3.计算累计SNP的位置
Snp_pos <- chr_pos %>%
left_join(gwasResults, ., by="CHR") %>%
arrange(CHR, BP) %>%
mutate( BPcum = BP + total)
4.查看转化后的数据
head(Snp_pos,2)
SNP CHR BP P total BPcum
1 rs1 1 1 0.9148060 0 1
2 rs2 1 2 0.9370754 0 2
pyecharts官方中文文档