0

我有一个二维列表文件(名称 - 'hcl_file')。为清楚起见,文件的缩短版本。垂直观察,水平实验编号:

ID type First Second Third

gerg    I   0.02695 0    0.00135      0.31312

11P     I   0.02695 0    0.00135      0.31312

112HP   II  0.02695 0    0.00135      0.31312

1454HP  II  0.02695 0    0.00135      0.31312

11544H  III 0.02695 0    0.00135      0.31312

657BF   III 0.02695 0    0.00135      0.31312

785DS   III 0.02695 0    0.00135      0.31312

我是编程新手。您能否告诉我如何计算 I、II、III 型之间差异的显着性,然后进行 BH(Bennamini 和 Hochbberg)调整?为了避免误解,让我澄清一下,我们正在对不同的组(I,II,III)进行实验并找到它们的 p 值,但是我们对需要调整 p 值以进行多重比较的其他数据重复此操作. 我在一个循环中这样做有困难,请告知进一步运动的方向。我的脚本:

对于 hcl_file 中的行:

     substrings = (len(line))

而 j < 子字符串:

k1 = []         # list of values in I-st group 

k2 = []         II

k3 = []         III

for line in hcl_file:

        if line[1] == 'I':

                v1 = float(line[j])

                k1.append(v1)

        elif line[1] == 'II':

                v2 = float(line[j])

                k2.append(v2)

        elif line[1] == 'III':

                v3 = float(line[j])

                k3.append(v3)



import pandas

from scipy.stats import mannwhitneyu

print(mannwhitneyu(k1, k2))

j += 1
4

1 回答 1

0

如果你要使用 pandas,也可以使用 pandas 来加载数据。

import pandas
from scipy.stats import mannwhitneyu
hcl_data = pandas.read_table(hcl_file, sep="\t")

print(mannwhitneyu(hcl_data.loc[hcl_data['type'] == "II"], hcl_data.loc[hcl_data['type'] == "III"]))

我不完全确定您要测试哪些列,所以我不能更具体。在将数据传递给 scipy 之前,您可能需要将数据展平。

于 2018-09-20T21:33:33.207 回答