我需要計算一組數組(observed
和expected
)的卡方擬合。陣列尺寸相同,但expected
的一些元素是None
,因爲我不知道預期值。我想用scipy.stats.chisquare
來計算數據的卡方擬合。由於我的一些數據是None
,我得到的錯誤:將scipy.stats.chisquare與蒙版數組一起使用
TypeError: unsupported operand type(s) for -: 'float' and 'NoneType'
我試圖解決這個問題只包括不None
import numpy.ma
import scipy.stats
expected = [None, 2,3,4]
observed = [1,2.2,3.3,4.4]
expMasked = numpy.ma.masked_where(expected == None, expected)
obsMasked = numpy.ma.masked_where(expected == None, observed)
chi2 = scipy.stats.chisquare(obsMasked, f_exp=expMasked)
這個數據只是給我同樣的錯誤。
如何在我的數據中使用scipy.stats.chisquare
函數?
'expMasked'仍然有'None'。您需要使用'numpy.ma.masked_where(期望== np.array(無),預計)'而不是。 –