Считая p-значение в python, не могу запустить функцию - PullRequest
0 голосов
/ 24 апреля 2020

Я пишу функцию для сравнения p-значения * X, каждый вход - это массив с одним столбцом и n строками. Я хочу, чтобы на выходе было наименьшее значение p и порядки двух столбцов. Но когда я запускаю функцию, всегда возникают проблемы, когда я помещаю ее за пределы 'def' и меняю * X на c, который является списком массива, я могу запустить его как

min_pvalue = 10
b = np.random.randint(0, 10, (3,1))
c = [b, b, b]
for i in range(0, len(c)):
    for j in range(i+1, len(c)):
        np_merge = np.concatenate((c[i],c[j]), axis = 1)
        df = pd.DataFrame(np_merge)
        df_first = df.loc[:,0]
        df_second = df.loc[:,1]
        temp = scipy.stats.ttest_ind(df_first, df_second)
        temp_pvalue = temp.pvalue
        if temp_pvalue < min_pvalue:
            min_pvalue = temp_pvalue
            ans_1 = i
            ans_2 = j
ans_tuple = (ans_1,  ans_2, min_pvalue)
print(ans_tuple)

Как я могу использовать функцию для запуска моего кода, как? def mass_independent_ttest1(*X)

...