我在使用scipy提供的mannwhitneyu测试时遇到了一些麻烦。我认为我的问题在于导入。这是我的剧本:
SNPs=[]
Nonsense=[]
with open("final_positions_SNP_removed_duplicates_truepos_truetrans_normalized.txt") as fd:
fd.readline()
for line in fd:
SNPs.append(line.split()[8])
with open("final_positions_nonsense_truepos_truetrans_normalized.txt") as fd:
fd.readline()
for line in fd:
Nonsense.append(line.split()[8])
from scipy import stats
from scipy.stats import mannwhitneyu
u_value, p_value = scipy.stats.mannwhitneyu(SNPs, Nonsense)
我一直收到错误消息:NameError: name 'scipy' is not defined
我想我需要导入scipy,但是如何?
答案 0 :(得分:3)
from scipy.stats import mannwhitneyu
u_value, p_value = scipy.stats.mannwhitneyu(SNPs, Nonsense)
您已导入mannwhitneyu
,因此您应该使用
u_value, p_value = mannwhitneyu(SNPs, Nonsense)
您获得NameError: name 'scipy' is not defined
的原因是您没有导入scipy
,您只导入了scipy
的模块。要导入scipy
本身,你必须这样做:
import scipy