如何遍历每对列

问题描述

我有一个199 x 15的Excel文件(具有15列和199行)。我的工作是为每15对列计算一次统计信息。基本上所有对的(1,2),(1,3),(1,4),...(14,15)...等,我必须为105(15 ×14/2)提供的变量对。所有数据列均填充有0或1。我要计算的统计数据是卡方。这是我到目前为止的内容

import itertools
import matplotlib.pyplot as plt
import numpy
import pandas as pd
import numpy as np
from scipy.stats import chi2_contingency,chi2
from bioinfokit.analys import stat,get_data,chisq
from itertools import combinations

df = pd.read_csv(r'C:\Users\ether\OneDrive\Desktop\info.csv')


data = np.random.randint(0,5,(199,15))
p_value_matrix = np.zeros((15,15))
for i,j in combinations(range(15),2):
    _,p_val = chi2(data[:,i][:,None],data[:,j][:,None])
    p_value_matrix[i,j] = p_value_matrix[j,i] = p_val
    if p_val < 0.05:
        print('possibly dependent: {} -- {}'.format(i,j))

但是,当我运行它时,我不断收到此错误

_,None])
TypeError: cannot unpack non-iterable rv_frozen object

我不知道如何解决。有人可以替我修复吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)