GSEA(Gene Set Enrichment Analysis)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GSEA(Gene Set Enrichment Analysis)相关的知识,希望对你有一定的参考价值。
参考技术A 1.有可能在多重假设检验后不存在具有统计学意义的差异基因存在;
2.又或者,具有统计学意义的基因很多,但并不富集于统一的生物学主题;相应的阐述可能冗长、主观,主要依赖生物学家的专业知识;
3.单基因分析可能丢失对通路影响的重要信息;细胞过程通常会对多个基因造成影响; 代谢通路中所有编码基因的表达增加20%对通路造成的影响可能比单个基因增加20倍更重要;
4.不同的课题组研究同一种生物现象时,得到的具有统计学意义的基因list的overlap很少;
1.在基因集的水平上进行分析;
2.基于先验的生物学知识(基因集S);
3.不具有统计学意义的基因也会考虑进去(Gene List L);
4. 目的: 观察基因集S中的基因在L中是随机分布还是集中在top/bottom(预期是如果富集,会呈现出后面的分布);
不咋华丽的分割线,结合上clusterprofiler的gseKEGG函数理解下:
课程分享
生信技能树全球公益巡讲
( https://mp.weixin.qq.com/s/E9ykuIbc-2Ja9HOY0bn_6g )
B站公益74小时生信工程师教学视频合辑
( https://mp.weixin.qq.com/s/IyFK7l_WBAiUgqQi8O7Hxw )
招学徒:
( https://mp.weixin.qq.com/s/KgbilzXnFjbKKunuw7NVfw )
[测试题]gene
Description
Input
Output
Sample Input
3
A+00A+A+ 00B+D+A- B-C+00C+
Sample Output
bounded
Hint
题解
1 //It is made by Awson on 2017.9.19 2 #include <map> 3 #include <set> 4 #include <cmath> 5 #include <ctime> 6 #include <queue> 7 #include <stack> 8 #include <cstdio> 9 #include <string> 10 #include <vector> 11 #include <cstdlib> 12 #include <cstring> 13 #include <iostream> 14 #include <algorithm> 15 #define LL long long 16 #define Max(a, b) ((a) > (b) ? (a) : (b)) 17 #define Min(a, b) ((a) < (b) ? (a) : (b)) 18 #define Abs(a) ((a) < 0 ? (-(a)) : (a)) 19 using namespace std; 20 21 int n; 22 23 int getnum(char x, char y) { 24 if (x == \'0\') return 52; 25 return x-\'A\'+26*(y == \'+\'); 26 } 27 void work() { 28 char ch[10]; 29 bool mp[100][100] = {0}; 30 int in[100] = {0}; 31 for (int T = 1; T <= n; T++) { 32 scanf("%s", ch+1); 33 for (int i = 1; i <= 8; i += 2) 34 for (int j = 1; j <= 8; j += 2) 35 if (i != j) { 36 int x = getnum(ch[i], ch[i+1]); 37 int y = getnum(ch[j], ch[j+1]); 38 if (x == 52 || y == 52) continue; 39 if (y < 26) y += 26; 40 else y -= 26; 41 mp[x][y] = true; 42 } 43 } 44 for (int i = 0; i <= 52; i++) 45 for (int j = 0; j <= 52; j++) 46 if (mp[i][j]) in[j]++; 47 int cnt = 0; 48 queue<int>Q; 49 while (!Q.empty()) Q.pop(); 50 for (int i = 0; i <= 52; i++) 51 if (!in[i]) Q.push(i); 52 while (!Q.empty()) { 53 int u = Q.front(); Q.pop(); 54 cnt++; 55 for (int i = 0; i <= 52; i++) 56 if (mp[u][i]) { 57 in[i]--; 58 if (!in[i]) Q.push(i); 59 } 60 } 61 printf("%s\\n", cnt < 53 ? "unbounded" : "bounded"); 62 } 63 64 int main() { 65 freopen("gene.in", "r", stdin); 66 freopen("gene.out", "w", stdout); 67 while (~scanf("%d", &n)) 68 work(); 69 return 0; 70 }
以上是关于GSEA(Gene Set Enrichment Analysis)的主要内容,如果未能解决你的问题,请参考以下文章
MAGENTA: Meta-Analysis Gene-set Enrichment of variaNT Associations