【发布时间】:2011-06-29 12:44:04
【问题描述】:
我正在尝试使用遗传学包中的 LD() 函数执行连锁不平衡计算。不知道的,写成如下:
g1=genotype(a)
g2=genotype(b)
LD(g1,g2)
a 和 b 是字符
鉴于此,我有一个包含 4 列和大量行的数据框,我试图找到其中 2 列的 LD。假设 df$col3 和 df$col4 代表上例中的 a 和 b,我将如何进行计算?
我正在考虑使用 tapply,因为 for 循环会花费很长时间:
tapply(df$col3,df$col4,function)
问题是我想不出一种方法来为它们所在的特定行设置以下内容:
g1=genotype(row "n", col3)
g2=genotype(row "m", col4)
我知道“row 'n'”不是实际有效的代码;我只是不知道该怎么形容它。
最后,我计划在可以设置 g1 和 g2 后运行 LD 计算
【问题讨论】:
-
能否请您发布一些示例数据? LD 函数在哪里?
-
tapply是这个工作的错误工具,mapply可能更合适。但我仍然不清楚你期望的最终结果是什么。 -
最终结果实际上将是一个数字答案(我忘了补充说我打算为此另写一列)。不过谢谢,我会试一试。