2017-10-17 299 views
0

我目前正在使用scipy绘制数据矩阵X中的一组特征变量的正常可靠性图。但是,我使用的模块没有返回我的r^2值。这是我的简单代码:Scipy stats.probplot不会返回r^2值错误?

Data_Matrix=pd.read_csv('My csv') 
My_datum=My_Data.as_matrix() 
#loop through all feature variables 
for i in range(My_datum.shape[1]): 
    #just a simple print line for the column index and its shapiro test 
results 
    print(i) 
    print(a) 
#plot  
pplot=stats.probplot(My_datum[:,i],dist='norm',fit=True, plot=plt) 
    a=sp.stats.shapiro(My_datum[:,i]) 

我试过在一些简单的numpy数组上使用同一行,但无济于事。我正在Spyder 3上工作Ipython控制台。非常感谢!

+0

什么是'r^2',为什么它必须返回该值? – eyllanesc

+0

R^2 =拟合优度 –

+0

r^2是决定系数,是Stuart Buckingham所说的线性预测的“强度”。让我知道,如果我可以提供更多的细节! – user7351362

回答

2

Probplot已经返回R值。你只需要把它平方就给你R^2。

(slope, intercept, r) = stats.probplot(My_datum[:,i], dist='norm', fit=True, plot=plt) 
R_squared = r**2 
+0

感谢您的回复!我有点困惑,但我得到一个错误,我没有足够的值来解压缩(预计3,得到2?) – user7351362

+0

啊,你可以尝试设置情节为True:即(斜率,截距,r)= stats.probplot(My_datum [:,i],dist ='norm',fit = True,plot = True)' –

+0

不幸的是,这并没有奏效,尽管如果我只是初始化两个元组而不是三个来保存我的它的工作价值! – user7351362