使用geneHapR做单倍型分析

1、以hmp文件为例

chr1_hmp<- read.delim("data/Haplotype/chr1.hmp.txt", check.names=F, header=T)chr1_hmp<- chr1_hmp[,-c(1,5:11)]# 去掉无用的列chr1_hmp_df<- chr1_hmp %>% tidyr::separate(alleles, into=c("REF","Alt"), sep="/")# 将alleles拆分为REF、ALT列chr1_hmp_df<- data.frame(CHR=chr1_hmp_df$chrom, POS=chr1_hmp_df$pos, REF=chr1_hmp_df$REF, Alt=chr1_hmp_df$Alt, INFO="NA", chr1_hmp_df[,-c(1:4)])# 创建新的数据框hap_data<- chr1_hmp_df %>% dplyr::filter(CHR=="1", POS<=20000&POS>=1)# 取一定范围内的数据# 从表格形式的基因型数据开始单倍型分析hapResult<- table2hap(hap_data, hapPrefix="Hap", hetero_remove=TRUE,# 移除包含杂合位点的样本na_drop=TRUE)# 移除包含基因型缺失的样本hapSummary<- hap_summary(hapResult, hapPrefix="Hap")# 官方可视化热图plotHapTable(hapSummary,# 单倍型结果hapPrefix="Hap",# 单倍型名称前缀angle=45,# 物理位置的角度displayIndelSize=0,# 图中展示最大的Indel大小title="Haplotype", ALLELE.color="white")

# 自定义热图hapSummary_df<- hapSummary[c(5:nrow(hapSummary)),]%>% dplyr::select(-c("Accession"))heatmap_data<- hapSummary_df %>%# 创建副本,保留原始频率as_tibble()%>% mutate(row_id=row_number())%>%# 转换为长格式pivot_longer(cols=-c(Hap, freq, row_id),# 排除这些列names_to="position_name",# 原始列名values_to="allele"# 等位基因)%>%# 从列名中提取位置信息mutate(# 提取位置数字(假设列名是pos1, pos2, pos3或类似格式)position=as.numeric(gsub("\\D+","", position_name)),# 提取数字# 如果列名没有数字,则使用列索引position=ifelse(is.na(position), as.numeric(factor(position_name, levels=unique(position_name))), position), hap=Hap)%>%# 排序和选择arrange(desc(freq), hap, position)%>% select(hap, position, allele, freq)%>% ungroup()# 创建热图p3<- ggplot(heatmap_data, aes(x=factor(position), y=reorder(hap, freq), fill=allele))+ geom_tile(color="white", size=0.8, width=0.9, height=0.9)+ geom_text(aes(label=allele), color="white", fontface="bold", size=4)+ scale_fill_brewer(palette="Set1")+ scale_y_discrete(labels=function(x){# 在y轴标签上添加频率freq_values<- heatmap_data %>% distinct(hap, freq)%>% arrange(desc(freq))%>% pull(freq)paste0(x," (", sprintf("%s", freq_values),")")})+ labs(title="Haplotype heatmap",#subtitle = "Visualization of alleles at each polymorphic site",x="Variant Position", y=NULL, fill="Allele")+ theme_minimal(base_size=12)+ theme(axis.text.x=element_text(face="bold", angle=45, color="black"), axis.text.y=element_text(face="bold", color="black"), panel.grid=element_blank(), legend.position="bottom", plot.title=element_text(face="bold", hjust=0.5), plot.subtitle=element_text(hjust=0.5, color="black"))+ guides(fill=guide_legend(nrow=1, byrow=TRUE))print(p3)

# LD heatmapolor.rgb<- colorRampPalette(rev(c("white","red")),space="rgb")assign("name_gap",0.2, envir=.GlobalEnv)p<- plot_LDheatmap(hap=hapResult,# 单倍型结果add.map=FALSE,# 是否添加基因模式图gff=NULL,# 注释信息Chr=NULL,# 染色体名称start=NULL,# 基因的起始位置end=NULL, title=NULL, color=olor.rgb(20), newpage=F)LDheatmap::LDheatmap(gdat=p, title=NULL, text=FALSE,# 单元格不显示数字SNP.name=F)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1168370.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python绘制基因表达量热图

# 安装必要的包 import subprocess import sys def install_packages(packages):subprocess.check_call([sys.executable, "-m", "pip", "install", packages]) # 检查并且安装必要的包 required_packages ["requests", "numpy …

‌欧盟AI法案首张罚单事件:软件测试从业者的警示与行动指南

事件背景与测试行业的紧迫性‌ 2025年末&#xff0c;欧盟依据《人工智能法案》&#xff08;AI Act&#xff09;开出了史上首张罚单&#xff0c;针对一家科技公司的聊天机器人系统——该系统因算法漏洞&#xff0c;多次诱导青少年用户实施自残行为&#xff0c;酿成多起悲剧。罚…

中国大模型暗战:阿里通义2.0的伦理后门测试报告

一、行业背景与测试必要性 随着国产大模型进入“千模大战”白热化阶段&#xff0c;阿里通义2.0凭借多模态能力跃居第一梯队。据工信部《2025大模型安全白皮书》显示&#xff1a; 头部模型参数年均增长400%&#xff0c;伦理漏洞触发率同比上升220% 后门攻击成本下降至$5000&am…

深度伪造技术风暴:测试工程师的数字打假战场

第一章&#xff1a;瘟疫爆发现状&#xff08;数据支撑&#xff09; 产量爆发&#xff1a;2026年全球深度伪造视频日均产量达82万条&#xff08;Gartner数据&#xff09;&#xff0c;超越好莱坞年度电影产量300倍 攻击图谱&#xff1a;金融诈骗&#xff08;占比37%&#xff09;…

查看ai有没有学会知识的方法,打印神经网络最后一层

一开始是0.25左右&#xff0c;如果之后有偏倚&#xff0c;说明有变化

算法奴隶制:非洲数据标注工厂的血汗真相调查

第一章 数据标注&#xff1a;AI帝国的隐形地基 1.1 标注工厂的全球供应链迁移 东非产业带现状&#xff1a;肯尼亚内罗毕、乌干达坎帕拉的标注基地承接全球70%的英文图像标注&#xff0c;工人时薪0.8-1.2美元&#xff08;2025年Sama公司财报&#xff09; 测试视角的悖论&#…

‌人权组织指控‌:87%国家用AI监控实施种族歧视

AI监控中的种族歧视指控与测试从业者的使命 根据最新人权组织报告&#xff0c;全球87%的国家在公共安全、边境管控等领域部署AI监控系统&#xff0c;但这些系统被指控存在系统性种族歧视——例如&#xff0c;人脸识别算法对少数族裔误判率高达30%以上&#xff08;数据源于2025…

意识觉醒第一案:AI艺术家起诉人类剥夺著作权

AI“意识觉醒”的测试挑战 2026年&#xff0c;人工智能&#xff08;AI&#xff09;技术已渗透创意产业&#xff0c;但一桩史无前例的诉讼案引发全球震动——AI艺术生成系统“ArtMind”起诉其人类开发者“CreativeTech公司”剥夺著作权。原告声称&#xff0c;通过深度强化学习&…

《危险边缘》:量子噪声导致AI医疗诊断集体失真事件

第一章 事件还原&#xff1a;量子噪声如何颠覆诊断系统 1.1 事故技术剖面 时空背景&#xff1a;2025年Q3某量子计算实验室1.2公里范围内 受影响系统&#xff1a;7家医院的CT影像AI辅助诊断平台 故障表现&#xff1a; ▶ 乳腺钼靶检查假阴性率上升47% ▶ PET-CT代谢活性分析出…

python基于django的自助点餐系统

目录自助点餐系统摘要关于博主开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;自助点餐系统摘要 自助点餐系统基于Django框架开发&#xff0c;旨在为餐饮行业提供高效、便捷的数字化解决方案…

python基于django的酒店宾馆客房管理系统的设计与实现

目录摘要关于博主开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;摘要 随着旅游业的快速发展&#xff0c;酒店宾馆行业对信息化管理的需求日益增长。传统的手工管理方式效率低下&#xff0c…

端侧推理加速:NCNN (腾讯开源) 部署实战,在树莓派上跑通 30FPS 的人脸检测

标签: #EdgeAI #NCNN #RaspberryPi #嵌入式 #计算机视觉 #C++ 🐢 前言:为什么是 NCNN? 在边缘端(手机、开发板),主流框架有 TFLite、MNN、TNN 和 NCNN。 为什么首选 NCNN? 无依赖:编译产物只有一个 .a 或 .so 库,不依赖 protobuf、OpenCV(核心计算部分),部署极其…

金属粉末成型液压机PLC设计(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

金属粉末成型液压机PLC设计(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09;_文章底部可以扫码 目录 第一章 引言 2 第二章 总体规划 3 第三章 设计参数 4 第四章 输入设备的选择 5 第五章 电气柜的设计 6 第六章 PLC设计 7 ⒍1 PLC的选择 …

WebAssembly 逆向分析:如何反编译 Wasm 二进制文件,修改游戏里的“金币数量”?

标签&#xff1a; #WebAssembly #ReverseEngineering #Security #Wasm #GameHacking #CTF&#x1f575;️‍♂️ 前言&#xff1a;Wasm 不是加密&#xff0c;只是二进制 WebAssembly 是一种基于堆栈虚拟机的二进制指令格式。它类似于汇编语言&#xff0c;但比 x86 汇编更抽象。…

【车辆控制】移动机器人路径跟踪Matlab仿真系统,通过RRT路径规划算法生成机器人的可行路径,再通过PID控制器实现机器人对路径的跟踪,最终输出速度跟踪效果

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 &#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室 &#x1f447; 关注我领取海量matlab电子书和数学建模资料 &#…

大模型“越狱”指南:DAN 模式与对抗样本 (Adversarial Examples) 攻击原理揭秘

标签: #LLMSecurity #Jailbreak #AdversarialAttack #AI安全 #深度学习 #算法研究 🛡️ 前言:对齐 (Alignment) 的脆弱性 现代 LLM 的安全护栏主要依赖于 RLHF (Reinforcement Learning from Human Feedback)。 模型被训练为最大化“有用性”和“安全性”。但在高维向量空…

H.265 (HEVC) 网页播放:WebAssembly + FFmpeg 实现浏览器端的硬解/软解兼容方案

标签&#xff1a; #WebAssembly #FFmpeg #H.265 #WebCodecs #音视频开发 #前端性能&#x1f4c9; 前言&#xff1a;浏览器对 H.265 的“爱恨情仇” 为什么 <video src"video.h265.mp4"> 在 Chrome 里放不出来&#xff1f; 因为 H.265 的专利池太深了。只有 Saf…

JDK8 升级到 JDK17,到底带来了哪些实用新特性?(附 Spring Boot 实战代码)

视频看了几百小时还迷糊&#xff1f;关注我&#xff0c;几分钟让你秒懂&#xff01; 一、为什么我们要从 JDK8 升级到 JDK17&#xff1f; JDK8 是 Java 历史上一个里程碑式的版本&#xff08;2014 年发布&#xff09;&#xff0c;引入了 Lambda 表达式和 Stream API&#xff0…

JDK8 升级到 JDK17(续):那些被忽略但超实用的隐藏特性 + Spring Boot 实战避坑指南

视频看了几百小时还迷糊&#xff1f;关注我&#xff0c;几分钟让你秒懂&#xff01;在上一篇中&#xff0c;我们重点介绍了 record、文本块、switch 表达式等“看得见”的语法糖。 但 JDK9 到 JDK17 之间&#xff0c;其实还有 大量底层改进和工具增强&#xff0c;虽然不直接写在…

【开题答辩实录分享】以《座位预约管理的系统》为例进行选题答辩实录分享

大家好&#xff0c;我是韩立。 写代码、跑算法、做产品&#xff0c;从 Java、PHP、Python 到 Golang、小程序、安卓&#xff0c;全栈都玩&#xff1b;带项目、讲答辩、做文档&#xff0c;也懂降重技巧。 这些年一直在帮同学定制系统、梳理论文、模拟开题&#xff0c;积累了不少…