我正在尝试从SNP数据(~4000SNP)计算tajD。我有fasta和vcf文件,最初尝试使用我的fasta文件。在帮助下,我得到的结论是,我有一个脚本可以从文件中进行采样,但我需要将fasta文件拆分为不同的群体。我害怕这样做(虽然我必须给出我现在得到的错误),所以我分阶段我的vcf文件,并希望使用它。我使用R包pegas,我收到以下错误。
> rm(list=ls(all=T))
> library("ape")
> library("ade4")
> library("adegenet")
> library("pegas")
> b8c18FromVcf <- read.vcf("b8c18_2phased.vcf")
文件显然尚未访问: 扫描文件b8c18_2phased.vcf 3.194102 / 3.194102 Mb 完成。 阅读4074/4074位点。 完成。
> b8c18haplos <- haplotype(b8c18FromVcf)
分析个人没有。 186/186
来自haplos的> tajd <- tajima.test(b8c18haplos)
警告讯息: 在tajima.test(b8c18haplos):Tajima测试需要至少4个序列
我会在这里附加我的分阶段和非分阶段文件的链接。 https://drive.google.com/open?id=0B6qb8IlaQGFZTmQ1YXRVbnFSRzA https://drive.google.com/open?id=0B6qb8IlaQGFZQm9HZjZSUkE3NEU
有什么想法吗?
最后,我想知道是否有办法在tajD命令中对群体进行子集化。我在同一个vcf文件中有7个群体,我应该分别计算每个群体的tajD。如果没有,什么是用于子集化vcfs的最佳工具。我已经对此进行了大量的谷歌搜索,但似乎都不是直截了当的。
谢谢,
答案 0 :(得分:0)
Pegas的开发人员回应我说Tajima的D需要DNA序列。它不能使用vcf文件执行,即使它是分阶段的。