主要使用blupADC完成题目的功能,此包是华中农业大学梅全顺编写。在使用以下6与7功能之前,通常需要提前下载好 DMU 软件 (DMU下载网站) 和 BLUPF90软件 (BLUPF90下载网站)。
如果您想将DMU和BLUPF90用作商业用途,请务必联系 DMU 和 BLUPF90的作者!!!
下载
首先查看Github的主页:https://github.com/TXiang-lab/blupADC/
需要将一面对应的版本修改,目前其还在不断改进,所以版本迭代的比较快。
install.packages(c("Rcpp", "RcppArmadillo","data.table"))
## linux
packageurl <- "https://github.com/TXiang-lab/blupADC/raw/main/blupADC_1.0.1_linux.tar.gz"
install.packages(packageurl,repos=NULL,method="libcurl")
## windows
packageurl <- "https://github.com/TXiang-lab/blupADC/raw/main/blupADC_1.0.1.zip"
install.packages(packageurl,repos=NULL)
功能简介:
- 基因型数据间的格式转换
2.基因型数据的重复性检测 - 系谱追溯、重命名及纠错
- 基因型数据的质控与填充
- 亲缘关系矩阵的构建
- DMU软件的交互使用
- BLUPF90软件的交互使用
以下是代码
1. 基因型数据间的格式转换
其可以实现Hapmap,Plink ,VCF ,Haplotype, Numeric , BLUPF90 格式的相互转化
library(blupADC)
sum_data=genotype_data_format_conversion(
input_data_hmp=data_hmp, #提供的hampap格式数据的对象
output_data_type=c("Plink","BLUPF90","Numeric"),#基因型数据的输出类型
return_result = TRUE, #是否在R中返回结果
cpu_cores=1 #调用的cpu数目
)
最近其增加了BLUPF90格式转为Hapmap格式的文件。
2.基因型数据的重复性检测
library(blupADC)
overlap_result=genotype_data_overlap(
input_data_hmp=data_hmp, #提供的hampap格式数据的对象
overlap_threshold=0.95, #判断重复的阈值
return_result=TRUE #是否在R中返回结果
)
3. 系谱追溯、重命名及纠错
library(blupADC)
pedigree_result=trace_pedigree(
input_pedigree=origin_pedigree, #提供的系谱数据的对象
trace_generation=3 # 系谱追溯的代数
)
4. 基因型数据的质控与填充
library(blupADC)
genotype_data_QC_Imputation(
input_data_hmp=data_hmp, #提供的hampap格式数据的对象
data_analysis_method="QC_Imputation", #数据分析方法,质控+填充
output_data_path="/root/result", #基因型数据的输出路径
output_data_name="YY_data", #基因型数据的输出名称
output_data_type="Plink" #基因型数据的输出类型
)
5. 亲缘关系矩阵的构建
library(blupADC)
kinship_result=cal_kinship(
input_data_hmp=data_hmp, #提供的hampap格式数据的对象
kinship_type=c("G_A","G_D"), #亲缘关系矩阵的类型
dominance_type=c("genotypic"), #显性效应的类型
inbred_type=c("Homozygous"), #近交系数的类型
return_result=TRUE) #在R中返回结果
6. DMU软件的交互使用
library(blupADC)
data_path=system.file("extdata", package = "blupADC") # 示例文件的路径
run_DMU(
phe_col_names=c("Id","Mean","Sex","Herd_Year_Season","Litter","Trait1","Trait2"), # colnames of phenotype
target_trait_name=c("Trait1"), #性状名称
fixed_effect_name=list(c("Sex","Herd_Year_Season")), #固定效应名称
random_effect_name=list(c("Id","Litter")), #随机效应名称
covariate_effect_name=NULL, #协变量效应名称
phe_path=data_path, #表型文件路径
phe_name="phenotype.txt", #表型文件名
integer_n=5, #整型变量数
analysis_model="PBLUP_A", #遗传评估模型
dmu_module="dmuai", #方差组分估计使用的DMU模块
relationship_path=data_path, #亲缘关系文件路径
relationship_name="pedigree.txt", #亲缘关系文件名
output_result_path="/root" #结果输出路径
)
7. BLUPF90软件的交互使用
library(blupADC)
data_path=system.file("extdata", package = "blupADC") # 示例文件的路径
run_BLUPF90(
phe_col_names=c("Id","Mean","Sex","Herd_Year_Season","Litter","Trait1","Trait2"), # 表型数据的列名(ps.表型文件无列名)
target_trait_name=c("Trait1"), #性状名称
fixed_effect_name=list(c("Sex","Herd_Year_Season")), #固定效应名称
random_effect_name=list(c("Id","Litter")), #随机效应名称
covariate_effect_name=NULL, #协变量效应名称
phe_path=data_path, #表型文件路径
phe_name="phenotype.txt", #表型文件名
analysis_model="PBLUP_A", #遗传评估模型
relationship_path=data_path, #亲缘关系文件路径
relationship_name="pedigree.txt", #亲缘关系文件名
output_result_path="/root" #结果输出路径
)