问题标签 [genetics]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - R循环用于将方程应用于每个唯一类别
我正在寻求帮助编写一个 R 循环来计算每个独特单倍型的香农信息内容 (SIC)。数据包括第 1 列中的单倍型和第 2 列中的单倍型频率。正如您在示例数据中看到的那样,只有 4 个独特的单倍型,每种单倍型的数量不同,频率对应于每个单倍型。所有单倍型 H* 的频率总和为 1。SIC 的方程为
Σi (πhi*log(1/(πhi)))
其中 πhi 是 hi 单倍型的频率
在本例中,H1 的 SIC 为
(π*0.8278*log(1/(π*0.8278))) + (π*0.02248*log(1/(π*0.02248))) + (π*0.1494*log(1/(π*0.1494)))
最终输出应给出 4 个 SIC 值,一个对应于每个独特的单倍型。
我相信使用lapply()
是前进的正确方法,但我的 R 技能非常初级,不知道下一步该做什么。感谢您的任何帮助。
r - 将函数应用于矩阵中的列对之间的每 20 行
我有一组遗传 SNP 数据,如下所示:
矩阵的大小为 56 列 x 46482 行。我需要首先将矩阵按每 20 行进行一次分类,然后将前 8 列(创始人)中的每一列(创始人)与每列 9-56 进行比较,并将匹配字母/等位基因的总数除以总行数(20)。最终我需要 48 个 8 列 x 2342 行矩阵,它们本质上是相似矩阵。我试图通过以下方式分别提取每一对:
但这远非高效,而且我不知道将函数应用于每 20 行和多对的更快方法。
在上面给出的示例中,如果行全部相同,如跨 20 行所示,则 Sample1 矩阵的第一行将是:
r - 循环回归
我有一个包含 2000 个基因表达变量的数据集,其中包含 62 个观察值,并且希望通过回归类变量上的每个变量来获得 p 值(1 表示健康或 2 表示有肿瘤),并且想要回归每个类变量上的基因表达变量并以矩阵形式获得p值-我该怎么做?
r - 使用 R 提取特定行
我有一个 ID 向量,它描述了一个组的成员身份。每个 ID 在列表中只出现一次。
例子:
我还有一个表(3 列,74985 行,无标题),其中包含 V1 中的单个 ID(记录为数字),V2 中的组 ID。以及 V3 中该组的简短描述。
例子:
每个人可以属于多个组,每个组中可以有多个个人。在示例中,个人 1 在 group 中 GO:0003674, GO:0005576 and GO:0008150
。
我想从表中提取并保留组 ID 与组 ID 向量匹配的每一行(即每个组)。第一个向量中的一些 ID 在表中没有匹配项。我尝试过使用合并功能,但没有成功,它似乎在一个组中多次包含同一个人。
r - 使用 SNP 等位基因数据为 ACGT 创建概率矩阵
给定 8 个样本 (A1-A8) 的以下数据:
每列是一个样本,每一行是一个标记,可能编码为 A、C、G、T,我希望计算每一行的 4 个等位基因中任何一个的起源的概率。例如,上面第 1 行数据的输出应该是
由于第 1 行中有 7 个样本具有 T,因此每个样本的概率为 1/7。由于只有 A8 拥有 C,因此将 C 分配给 A8 的概率为 100%。对于第 3 行,输出应为
总输出应该是 i 8x4 矩阵的列表,其中 i 等于行数。
一个可重做的代码示例是:
经过这一步,我不确定如何将每列的总计数相加并除以得到总概率。
r - 在 HMM 中实现 Viterbi 算法,改变基因组标记的发射矩阵
我想在实施隐藏马尔可夫方法以根据 SNP 基因型数据分配祖先时寻求帮助。鉴于我有一个这样生成的转换矩阵:
发射矩阵是 n 个 8x4 矩阵的列表,其中 n 等于数据中 SNP/行的数量。例如,对于 3 个 SNP/行的 8 个样本 (A1-A8) 的以下数据:
列表中的矩阵 1 将是
由于第 1 行中有 7 个样本具有 T,因此每个样本的概率为 1/7。由于只有 A8 拥有 C,因此将 C 分配给 A8 的概率为 100%。对于第 3 行,输出应为
使用上述转换矩阵和发射矩阵列表,我希望在任何等位基因序列上实现维特比算法。我目前拥有的代码无法为每一行使用不同的发射矩阵
r - 一种测试一组外显子/内含子/utr基因组位置的方法?
我想测试一堆形式的基因组位置:
我想看看它们是否位于 UTR 或内含子或外显子或基因间序列中。我不关心这些坐标在哪些基因的内含子(等)中的信息。
我假设每个已知的遗传元素(如外显子)都定义了基因组位置(每条染色体上基因组的起始位置)。我知道这对于外显子和内含子来说是正确的,例如 Ensembl 对基因组中的每个外显子都有 ID:请参见Mus muscululus 中 Amy1 基因的外显子和内含子的示例。我想用上面的位置列表查询此类位置的数据库,以及两者之间是否存在重叠(理想情况下,我应该能够指定重叠,例如,至少 10bp,但如果不是,我可以) ,我应该得到一个打击(是的,这个区域在外显子/内含子/)
缺点是我有几千个这样的位置,理想情况下希望一次性查询它们,并且作为输出有一个表格,每个位置都将被分配“内含子/外显子/utr/intergenic”。该生物是Mus musculus,位置来自整个基因组。
我现在无法提供我正在尝试做的代码示例,因为我不知道从哪里开始 - 如果我有一个包或任何可以构建的东西将帮助我找到解决方案。
如果我能在 R 中做到这将是完美的,但是我无法在 biomaRt 中做到这一点,而且我找不到一个包来做到这一点。我想到了 Galaxy,但考虑到他们不平凡的做法和他们产生的奇怪输出,我宁愿坚持 R。你知道的魔鬼等等。
帮助将不胜感激。
r - 将 SNP ID 映射到基因组坐标
我有几个SNP ID(即 rs16828074、rs17232800 等),我想从UCSC 基因组网站获取它们在 Hg19 基因组中的坐标。
我宁愿使用R
来实现这个目标。怎么做?
r - 可以处理 NA 的 jump() 的替代方法是什么?
需要应用分支定界法来选择最佳模型。leaps()
来自 jumps 包的效果很好,只有当数据没有NA
值时,否则会引发错误:
仅使用complete.cases()
不是一种选择,因为我丢失了 80% 的数据。
leap
可以处理NA
s的替代方法是什么?我正在编写自己的函数来做类似的事情,但它变得又大又笨重,我觉得我正在重新发明轮子......
更新:
我尝试过使用stepAIC()
,面临同样的数据丢失问题:
r - 补充 DNA 序列
假设我有一个 DNA 序列。我想得到它的补充。我使用了以下代码,但我没有得到它。我究竟做错了什么 ?