PubMed文献数据挖掘
这里集合了人类目前几乎所有的生物医学的智慧,可以做的东西太多了,就怕你没想象力。
目前的初步想法:
- 给定gene、蛋白、pathway等主体,搜索其研究热度(文献总数,时间线,影响因子分布),在特定condition里的分布(disease、tissue、cell type),以及对应的研究手段(model、sequencing);【可以用于筛选regulator】
- 基因调控网络,目前应该只能做co-exist的分析,真正causal的关系还很难,这也是我最终的目标;
一些设计:
- 有些匹配和抓取可以用电脑完成,有些则只能手动处理,建议每周批量处理一下顶刊的研究,不断积累!
第一步:下载数据,这些数据需要被遍历,也适合并行运算。
1 2 3 4 5 6 | # go to pubmed ftp and get files cat file .list.raw | grep pubmed22 | grep - v md5 | cut -f1 -d ' ' > file .names cat file .names | wc -l # https://ftp.ncbi.nlm.nih.gov/pubmed/baseline/ cat file .names | awk '{print "https://ftp.ncbi.nlm.nih.gov/pubmed/baseline/"$0}' > file .list wget -bi file .list |
第二步:提取数据
靠NPL提取文献摘要的信息。
有个2年前的R包写得非常好,可以直接把下载的xml.gz文件读取成R的dataframe
- https://github.com/christopherBelter/pubmedXML
第三步:排序筛选数据
- 先按年份、影响因子和引用量来排序,优先处理,确保不错过任何(IF>7 | < 5 years | citation > 100)的paper。
- 目前我只关注生物医学的研究,可以是纯实验的,也可以是纯生信的,但研究主题必须是人类疾病(cancer),且必须应用了任何一种model来开展研究。
第四步:分析数据和存储数据
- 现在不需要并行,所以SQLite就够用了
- 读取每一个PMID,然后提取其必须的信息,
核心:
- 关键词,及其alias,这是最重要的,也是分析的核心,遍历title和abstract,提取我想要的关键词(比如gene name);
- 不断更新关键词,可以unsupervised词频,定期来更新我们的关键词列表;
高级分析:
- 【最基本的注释】某个基因过去10年的研究热度,影响因子分布,核心的citation网络;都富集在什么disease,偏好使用什么model,什么技术手段,最常与哪些基因co-occurrent;
- 药物靶点的分析,药物种类,销售额;
expect outcome:
- 1 high-impact journal article (genome biology, etc)
- 1 SQL database
- 1 R package(optional)
- 1 interactive website(optional)
改写pubmed.minR,基本的雏形都有了,但是bug很多,尤其是pubmed的格式一直都在变。
可以持续改写,这些统计信息非常有用,值得花时间来整理。
可以偷偷搞的分析
pubmed只有abstract
想要全文只能通过sci-hub下载PDF,自己解析。
待续~
参考:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2016-12-29 机器学习实战
2016-12-29 Lander-Waterman model
2016-12-29 贪心算法(Greedy Algorithm)
2016-12-29 BWT压缩算法(Burrows-Wheeler Transform)
2016-12-29 后缀树(suffix tree)
2016-12-29 哈希表(Hash Table)
2016-12-29 后缀数组(suffix array)