王峥峰 分子生态学
 

问题解答

《基于高通量测序的基因组分析》

1. 第46页,图56下,“busco ..."这个命令最后增加一个参数项”--augustus“,即整个命令为”busco --in ... --augustus_species arabidopsis --augustus"(中间部分省略没写)。


2. 第35-36页,如果是用conda安装hapog的程序,如"conda create -n hapog"(创建了hapog环境),那么“mapping.py”这个程序在conda环境的"/home/o/anaconda3/envs/hapog/lib/python3.10/site-packages/hapog"目录下,其中“/home/o/anaconda3”是我安装conda的目录,读者的会和我的不同;“pathon3.10”是安装的python版本,读者也可能与我的不同,如“python3.8"等。


3. 第15页,此页中间“./sickle pe ...”最后面的“-q 30 -l 80”是指保留测序质量30以上,长度不低于80bp的序列。


4. 第79页,此页中的“funannotate train ...”这个命令中的“--stranded RF" 改为”--stranded no“。


5. 第117页,倒数第二行“(注意“*”前面有个空格”改为“(注意“*”前面有两个空格”。即

“sed 's/ */ /g' EHZ_LD.ld | cut -d " " -f 3 >EHZ_LD.1.ld 改为

sed 's/ **/ /g' EHZ_LD.ld | cut -d " " -f 3 >EHZ_LD.1.ld”。


6. 第127页倒数第3行,"CHR_BASH"程序请在网页下载更新的程序,打包下载的这一程序有错。


7. 第60页,第一行这个命令中,“scaffold.break- hic_HiC.review.assembly”中,“break-”和后面的”hic_HiC.review.assembly”和 之间没有空格,即为“scaffold.break-hic_HiC.review.assembly”。


《分子生态学与数据分析基础》

1. 第201页,图8-34中R程序的第5行“SLP<-split_lines_poly(shape.ln,b2)”中的命令“split_lines_poly”运行中可能会出问题,这是由于新版本的tmap程序已经把这个命令删除。读者可以下载我提供的旧版本tmap程序(请在主界面找到“演示数据和相关程序下载”)下载。或者把这个命令改为“SLP<-intersect(b2,shape.ln,drop = TRUE)”。


2.  第35页,MsatCommander软件,图3-1中如果选择“All(slow!)”这个选项,对于较大的数据,运行会很慢,建议还是单个单个选择运行,如先选“Mononucleodite”运行,再依次选“Dinucleodite”等运行。这里说明下,虽然还有很多其它微卫星寻找的程序,但MsatCommander软件是最方便的一个,其它相似软件都安装较为复杂。


3.  第136页,第一行至第二行中的“Obj<-read.genepop("c:/shiyan.gen",(package="adegenet"))命令。如果读者使用新版本的adegenet,运行这个命令会出错。这是软件的一个BUG。解决方法,在R的安装目录下(一般在“C:\Program Files下或“C:\Program Files (x86)”下),依次找到并进入“library”、“adegenet”和“files”,把“shiyan.gen”这个文件拷贝到“files”目录下,然后把上述命令改为“Obj<-read.genepop(system.file("files/shiyan.gen",package="adegenet"))即可。感谢李萌发现问题。


4. 第136页,如果是读取AFLP这类显性数据,可用如下方法:

a<-read.table("C:/Program Files/R/R-3.2.2/library/adegenet/files/AFLP.txt")

Obj <- df2genind(a,ploidy=2,type=c("PA"),ncode=1)

其中“AFLP.txt”是adegenet软件包自带的演示文件。文件在安装R和adegenet的目录下,如我的是在C:/Program Files/R/R-3.2.2/library/adegenet/files下。感谢全慧敏提出。


5. 第180-181页图中的r代码和下载演示的r代码有点出入。演示的r代码是正确的,而书中的r代码不全。因为整个运算是个循环,为了对中间步骤的一些值进行说明,我没有让程序进行循环,而是运行了其中一步。读者可在网站下载演示r代码对比查看。感谢李萌提出。

分享到: