当前位置: 首页 > news >正文

重测序关系矩阵构建方式汇总

样本间亲缘关系矩阵(kinship matrix)和同源性矩阵(IBS matrix)构建的方式

1. 可以使用plink的–make-rel计算个体之间的亲缘关系(强调个体之间的遗传相似性)

/opt/software/plink --bfile vcf_bfile--make-rel --out relatedness_matrix # 得到亲缘关系距离矩阵:
# relatedness_matrix.rel

2. kinship

# 利用tassel计算
run_pipeline.pl -Xmx1536m-Xms512m -SortGenotypeFilePlugin -inputFile 你的vcf文件 -outputFile outvcf -fileType VCF
run_pipeline.pl-Xmx1536m -Xms512m -importGuess outvcf -KinshipPlugin -methodCentered_IBS -endPlugin -export tassel_kinship.txt -exportType SqrMatrix
# 利用gcta计算
使用 --make-grm-alg 1 或 --make-grm 0
gcta --make-grm --make-grm-alg 1 --out snp.gcta --bfile vcf_bfile snp --autosome-num 90

3. IBS

/opt/software/plink --bfile  vcf_bfile --make-bed --out IBS_matrix --maf 0.05 --recode --double-id --allow-extra-chr --chr-set 90  --distance square ibs
要计算遗传距离,使用1-ibs

群体关系矩阵如何构建?

转换方法:平均IBS(个体对间均值)

计算所有个体两两之间的IBS均值,反映群体内遗传相似性。

#算法示例
import numpy as npdef pairwise_ibs(genotype_matrix):n_individuals = genotype_matrix.shape[0]ibs_matrix = np.zeros((n_individuals, n_individuals))for i in range(n_individuals):for j in range(i+1, n_individuals):ibs_sum = 0for snp in range(genotype_matrix.shape[1]):ibs_sum += calculate_ibs(genotype_matrix[i, snp, 0], genotype_matrix[i, snp, 1],genotype_matrix[j, snp, 0], genotype_matrix[j, snp, 1])ibs_matrix[i, j] = ibs_sum / genotype_matrix.shape[1]ibs_matrix[j, i] = ibs_matrix[i, j]  # 对称矩阵return ibs_matrix# 示例基因型矩阵(个体数×SNP数×2等位基因)
genotype_data = np.array([[['A', 'A'], ['G', 'G']],  # 个体1[['A', 'G'], ['G', 'G']],  # 个体2[['T', 'T'], ['A', 'G']]   # 个体3
])
ibs_matrix = pairwise_ibs(genotype_data)
print("群体IBS矩阵:\n", ibs_matrix)

相关文章:

  • 【机器学习】朴素贝叶斯
  • PyCharm与Unreal Engine集成进行开发
  • Numpy数组与矩阵——python学习
  • CSS 预处理器与模块化:Sass/LESS 实战技巧
  • 项目实战-贪吃蛇大作战【补档】
  • K8S ConfigMap 快速开始
  • 防静电瓷砖 vs 直铺PVC防静电地板优劣势对比
  • OpenCV 图形API(68)图像与通道拼接函数------垂直拼接两个图像/矩阵的函数concatVert()
  • OpenCV 图形API(67)图像与通道拼接函数-----水平拼接(横向连接)两个输入矩阵(GMat 类型)函数concatHor()
  • 使用 MQTT - C 访问 IoTDA 平台:一个完整的嵌入式示例
  • phpstorm用php连接数据库报错
  • linux 使用nginx部署vue、react项目
  • 人脑、深思考大模型与其他大模型的区别科普
  • Mac搭建Flutter IOS环境详细指南
  • Flutter 学习之旅 之 Flutter 和 Android 原生 实现数据交互的MethodChanel和EventChannel方式的简单整理
  • Transformer数学推导——Q27 证明时序注意力(Temporal Attention)在视频模型中的帧间依赖建模
  • 因特网和万维网
  • 游戏打击感实现
  • Day8 鼠标控制与32位模式切换
  • 配置管理平台Nacos01:基础安装教程和启动运行
  • 野猪穿过江苏电视台楼前广场,被抓捕后送往红山森林动物园
  • 南阳市委原书记朱是西被“双开”:搞劳民伤财的“政绩工程”
  • 俄罗斯称已收复库尔斯克州,普京发表讲话
  • 准“90后”山西壶关县委常委、副县长高雅亭赴北京密云挂职
  • 中国人民银行行长潘功胜会见世界银行行长彭安杰
  • 美检察官向法庭提交通知,要求判处枪杀联合健康高管嫌疑人死刑