
数据分析
文章平均质量分 52
马志远的生信笔记
兰州大学草地农业科技学院,青年研究员。欢迎畜牧学硕士报考加入我的团队
展开
-
微生物数据处理—Microbiomeanalyst在线分析
ZOTU表处理方法参见本人前述zotu流程1 OUT表准备用excel打开文件zotutab.vsearch.count_table,第一列列名改为#NAME,第二列删除 文件另存为csv格式文件2 准备meta文件Excel新建一个表格,第一列是样品名,第二列是处理分组信息,文件另存为csv格式3 准备物种注释文件用Excel打开zotus1.nr_v138.wang.taxonomy,选中第二列,替换,查找内容输入(*),点全部替换选...原创 2021-12-23 18:49:42 · 1824 阅读 · 5 评论 -
非线性拟合之干物质降解率
评估饲料降解的公式是0rskov and McDonald (1979)提出来的,公式是dp= a + b (1- e ^(-kd*t))where dp,a, b,kd werethe ruminal disappearance at time t, therapidly soluble fraction, the potentiallydegradable fraction, the constant rate ofpotentially degradable fraction本人用原创 2021-12-22 16:27:57 · 503 阅读 · 0 评论 -
OTU表或微生物组成表数据归一化到100万
mydata<-read.table("clipboard",sep="\t",header=T,row.names = 1)trans<-t(t(mydata)/colSums(mydata))*1E6write.table(trans,file="out.xls",sep="\t") #导出数据行名会错一个原创 2021-08-18 14:47:55 · 942 阅读 · 0 评论 -
kraken注释物种,eggnog注释基因一条龙服务
cd /mnt/10t/database/kraken2-build --download-library bacteria --db krakenbac --use-ftpkraken2-build --download-library archaea --db krakenarch --use-ftpmkdir /mnt/10t/mzy/24samples/taxcd /mnt/10t/mzy/24samples/taxfor i in 123 126 134 131 125 140 132原创 2020-06-18 10:14:41 · 836 阅读 · 3 评论 -
模型筛选代码
read.table(file="clipboard",sep="\t",header=T)->mydata#colnames(mydata)[c(2,4:14)]->v1 #sf#colnames(mydata)[3]->r1 #sfcolnames(mydata)[c(2,5:14)]->v1colnames(mydata)[4]->r1length(v1)->afml=paste(r1,"~",paste(v1,collapse="+"))fm.原创 2021-04-22 04:59:26 · 264 阅读 · 0 评论 -
diamond用法
#diamond makedb --in ECH2.faa -p 20 -d ECH2#cd /mnt/mzy/dairycow/24samples/mag/genset/raw#for i in MAG*#do#prodigal -i $i -a /mnt/mzy/dairycow/24samples/mag/genset/prodigal/$i.fa -q &#donecd /mnt/mzy/dairycow/24samples/mag/genset/prodigal/#cat *原创 2021-03-11 14:56:23 · 1960 阅读 · 0 评论 -
获得module丰度信息
#获得微生物代谢相关module的丰度信息#DNA水平modulelibrary(data.table)library(dplyr)fread("/mnt/mzy/dairycow/72samples/geneset/annotation.emapper.annotations",header=F,sep="\t",fill=T)->alist=c("M00004", "M00006", "M00007", "M00008", "M00033", "M00165", "M00166", "M原创 2021-03-04 21:44:00 · 335 阅读 · 0 评论 -
kraken获得丰度、lefese分析
for i in 141 97 83dokraken2 --db /mnt/database/kraken/minidb/minikraken2_v1_8GB --report $i.RNA --use-mpa-style --threads 32 --paired /data/72sample/sub72/RNA/$i.1.fq /data/72sample/sub72/RNA/$i.2.fq > $i.RNA.sam && rm -f $i.RNA.samdone#DN.原创 2021-03-03 21:53:59 · 734 阅读 · 0 评论 -
根据samtool 统计的reads数计算tpm值
library(data.table)library(dplyr)#DNAtpm计算SMP<-c(123,98,126,4,128,32,134,8,130,29,131,42,119,19,139,24,125,37,144,14,117,5,142,13,127,22,129,48,138,47,140,20,132,18,149,73,120,105,148,44,122,30,124,26,143,34,133,12,145,21,152,10,118,102,147,80,121,1,原创 2021-03-02 10:31:26 · 780 阅读 · 1 评论 -
通过excel power query合并两个数据集
上传需要匹配的两个表(一个分组信息文件,一个丰度数据文件)到查询中,上传方式可选择来自表格/区域(打开的excel文件中)或者是其他格式文件丰度表一维化以后长度超过了104万行,所以无法加载到工作表,不过没关系,我们不需要加载到工作表。现在选中任意一个表,右键选择合并两个表按列匹配,选中需要匹配的列。我们保留 表1中的所有行,将分组文件中的所有行在合并后的数据表中,匹配进来的会显示table,其实就是好多列,我们可以筛选这些信息筛选后的样子接下来将tax这...原创 2021-02-23 11:16:57 · 1149 阅读 · 0 评论 -
利用bowtie2和samtools获得reads在基因集上的反贴率
mkdir /mnt/mzy/dairycow/72samples/mag/geneprofilecd /mnt/mzy/dairycow/72samples/mag/geneprofilefor j in 123 98 126 4 128 32 134 8 130 29 131 42 119 19 139 24 125 37 144 14 117 5 142 13 127 22 129 48 138 47 140 20 132 18 149 73 120 105 148 44 122 30 124 2原创 2021-02-23 11:15:48 · 497 阅读 · 1 评论 -
R之cast公式使用
cast用来替代透视表简直完美。我们有一个33列的数据表,数据保存在Dmean和Rmean中> colnames(tmp)[1] "ORF" "Dmean" "Rmean"[4] "seed_eggNOG_ortholog" "seed_ortholog_evalue" "seed_ortholog_score"[7] "best_tax_level" "Preferred_name" ...原创 2021-01-30 14:53:40 · 1847 阅读 · 0 评论 -
eggNOGmapper注释蛋白序列
预测完ORF序列、去冗余并建立丰度表后,我们得到了预测基因的非冗余序列(核酸+蛋白),接下来要利用eggNOGmapper注释结果,按照国际惯例,我们利用蛋白序列注释。首先下载eggNOGmappergit clone https://github.com/jhcepas/eggnog-mapper.git在所在目录里就下好了这个软件,不需要安装,都是脚本接下来,把python修...原创 2020-10-19 14:55:59 · 4083 阅读 · 1 评论 -
ORFFINDER核酸序列转蛋白质序列
https://ftp.ncbi.nlm.nih.gov/genomes/TOOLS/ORFfinder/linux-i64/ORFfinder -in /mnt/mzy/dairycow/24samples/mag/genset/unique.fa -out unique.faa原创 2020-10-19 13:48:07 · 2960 阅读 · 0 评论 -
合并kraken结果
setwd("/mnt/mzy/dairycow/24samples/kraken")DNAsample<-c("127","134","133","143","140","122","125","117","149","132","130","142","145","152","118","147","121","151","135","136","150","146","141","137")system("awk -F '\t' '{print $1}' *DNA|sort|uniq >原创 2020-08-27 20:47:09 · 531 阅读 · 0 评论 -
beta多样性计算
file=c("salmonRNA.csv","salmonDNA.csv")for (j in file){ c<-read.csv(j,row.names=1,stringsAsFactors=FALSE) vegan::vegdist(t(c),method="bray") %>% ape::pcoa()->pcoa tmp<-if (is.null( pcoa$values$Rel_corr_eig)) pcoa$values$Relative_eig...原创 2020-08-26 19:53:25 · 4662 阅读 · 1 评论 -
alpha多样性计算
library(picante) alpha <- function(x, tree = NULL, base = exp(1)) { est <- estimateR(x) Richness <- est[1, ] Chao1 <- est[2, ] ACE <- est[4, ] Shannon <- diversity(x, index = 'shannon', base = base) Simpson <- diversity(...原创 2020-08-26 19:51:44 · 6173 阅读 · 0 评论 -
R和pandas实现透视表(pivot; cast/dcast/acast)和逆透视表(melt)过程
直接放代码R代码gc()library('magrittr')setwd("~/Documents/48sample/mag/")#合成丰度文件data.table::fread("DNA.geneabundance.txt(1)", sep="\t", header=T, stringsAsFactors=F) %>% data.frame()->profile...原创 2020-04-27 17:37:24 · 1004 阅读 · 0 评论 -
利用bowtie2去除宿主基因
从NCBI下载牛基因组,下载后gunzip解压wget ftp://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/002/263/795/GCF_002263795.1_ARS-UCD1.2/GCF_002263795.1_ARS-UCD1.2_genomic.fna.gz安装bowtie2sudo apt-get install bowtie2构建...原创 2020-03-01 22:46:25 · 6715 阅读 · 0 评论 -
excel搞定krakan2微生物组成数据
这个软件给出的结果很日鬼,数据相当杂乱。首先这个数据里直接看不出每个级别下未注释的序列数,其次,细菌、古菌、真核生物和病毒的分类级别不一样。我们先把数据整齐划一了,首先用excel打开文件,把tax列的"; "替换成“;”,然后把tax列按照“;”分列。在真菌的分类级别中,这软件把真菌划成了域,那真菌这里就有2个域“真核生物域”和“真菌域”,我们把真菌域划到真菌界吧。在域这一列把d__替换为k__...原创 2020-03-01 14:43:55 · 407 阅读 · 0 评论 -
eggNOG注释蛋白序列
下载软件(其实就是一堆脚本)git clone https://github.com/jhcepas/eggnog-mapper.git下载数据库alias python=/usr/bin/python2.7python download_eggnog_data.py 拆分蛋白文件xx.faaawk '!/^>/ { printf "%s", $0; n = "\...原创 2020-04-23 14:41:47 · 939 阅读 · 0 评论 -
p值校正,FDR(BH法)的实现过程
原理:我们要看下最常用的BH法的论文做m次无效假设作物的数量那么,被错误地拒绝了的无效假设的比例Q=V/(V+S)=V/R所谓的FDR值就是Q的期望值,E(Q)=E(V/R)如果无效假设是正确的(s=0且v=r),FDR值就和FWER(familywise error rate)一样,假设v=0(结合s=0,就是说假设结果一次错误都没有出),Q就为0;如果v>0(出...原创 2019-06-18 16:38:37 · 38529 阅读 · 15 评论 -
利用lmperm包进行置换检验
1准备细菌相对丰度文件2读入excel文件,以属水平数据为例library(readxl)bac.g <- read_excel(file.choose(),sheet = 1)3选择数据子集bac.g.b <- subset(bac.g,bac.g$b=="1")fix(bac.g.b) #设定goat为字符型变量bac.g.b<-as.data....原创 2019-05-31 22:52:11 · 892 阅读 · 0 评论