码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 根据系谱数据查看个体间关系


    文章目录

      • 背景
        • 1. 追溯3代系谱
        • 2. 系谱可视化:聚类和热图分析
        • 3. 系谱可视化

    背景

    有一个老师提问:

    邓老师,想问一下如何根据猪场子代父母代数据找出它们之间的系谱关系图呢,最好是方便统计的那种

    这个问题,可以从以下三个方面解答:

    • 1,根据三列系谱,得到15列系谱,这样每个个体,都可以网上追溯三个世代。
    • 2,根据系谱计算A矩阵,然后提取感兴趣的个体,可以绘制热图和聚类图
    • 3,对于感兴趣的个体,提取他们的三代系谱数据,作图

    数据介绍:

    library(data.table)
    library(tidyverse)
    library(nadiv)
    library(learnasreml)
    
    ped = fread("d:/pedigree_test.csv")
    head(ped)
    dim(ped)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    下面,介绍一下这三种方法的具体实施方法。

    1. 追溯3代系谱

    首先,这是三列系谱数据,我们需要将其转为15列系谱数据,包括每个个体的三个世代的数据。用的是我写的包learnasreml中的pedigree_3_to_15函数:

    如果我们想查看1092个体的三代系谱记录,可以找到ID列是1092的行,分别给出个体的三代系谱数据:

    • 个体
    • 个体的父本(S),爸爸
    • 个体的母本(D),妈妈
    • 个体的父本的父本(SS),爷爷
    • 个体的父本的母本(SD),奶奶
    • 个体的母本的父本(DS),姥爷
    • 个体的母本的母本(DD),姥姥
    • ……
    • ……

    如果我们想要筛选个体记录比较完整的个体,可以以DDD为条件,筛选一下:

    论文研究-用二分图实现数据发布的隐私保护.pdf
    .pdf 0星 超过10%的资源 589KB
    下载

    然后,将其变为3列系谱。这里用到的是pedigree_15_to_3

    2. 系谱可视化:聚类和热图分析

    上一步中,得到的系谱还有937条,我们对着937条系谱进行可视化。

    首先,计算亲缘关系A矩阵:

    Amat = makeA(pped1) %>% as.matrix()
    Amat[1:10,1:10]
    
    • 1
    • 2


    对其进行可视化:

    或者单独提取出聚类分析图:

    利用SSR分析标记鉴定大豆育种中杂交真伪和后代系谱 (2012年)
    pdf 星 654KB
    下载

    也可以做成圈图的聚类可视化:


    当然,上面品种较多,可视化不太直观,如果挑选出感兴趣的少数个体(比如20~50个),用上面的方法是非常方便的。

    3. 系谱可视化

    系谱可视化,可以使用visPedigree包中的visPedigree

    library(visPedigree)
    pped2 = visPedigree::tidyped(ped1)
    visped(pped2)
    
    • 1
    • 2
    • 3

    可以非常只管的看出个体间的关系。

    以上就是根据系谱查看个体间关系的三种方法,希望对大家有所帮助。

    相关的数据和代码,我上传到了我的知识星球,欢迎感兴趣的小伙伴下载使用。

    领取内容:pdf和配套数据代码

  • 相关阅读:
    像游戏一样办公,赋能OA系统转型
    Codeforces Round #803 (Div. 2)
    jQuery小结三
    企业如何正确使用低代码转型升级
    Linux下,基于TCP与UDP协议,不同进程下单线程通信服务器
    9.用户权限相关命令
    WebSocket的优缺点
    C++类模板
    创新破万“卷”,但创新自己得“卷”
    Redis7--基础篇1(概述,安装、卸载及配置)
  • 原文地址:https://blog.csdn.net/yijiaobani/article/details/126235266
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号