熊猫中两列中不同数据值的Phi系数计算

时间:2018-10-15 19:12:10

标签: pandas dataframe coefficients

我正在尝试获取一个矩阵,该矩阵对列中存在的所有基因的所有phi系数结果进行错误显示。

我有一个名为ALL的数据框,其结构如下:

   Sample   Gene   Oth
0    A       G2    Miss
1    A       G3    Non
2    B       G1    Non
3    C       G4    Miss

我打算获得的是一个像这样的矩阵:

   G1   G2   G3   G4
G1  1   phi  phi   phi
G2  phi   1  phi   phi
G3  phi phi   1    phi
G4  phi phi  phi   1

其中每个phi是基因出现列值的对应phi系数值。

每个phi值均通过以下公式计算:

           n11*n00 - n10-n01
phi =     --------------------
             sqrt(A*B*C*D)

哪里

      y=1    y=0    total
x=1   n11    n10      A
x=0   n01    n00      B
total  C      D       n

n11-> G1和G2都出现的样本数

n10->出现G1但不出现G2的样本数

n01-> G2出现但G1没有出现的样本数

n00-> G1和G2都不出现的样本数

例如,基于此表计算G1和G2的phi系数:

      G1     G2     total
G1     0      1       1
G2     1      1       2
total  1      2       n

0 个答案:

没有答案