首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >scipy.stats.linregress -获取截取的p值

scipy.stats.linregress -获取截取的p值
EN

Stack Overflow用户
提问于 2015-02-27 05:54:35
回答 1查看 3.4K关注 0票数 4

scipy.stats.linregress返回一个对应于斜率的p值,但不返回截取的p值。考虑文档中的以下示例:

代码语言:javascript
运行
复制
>>> from scipy import stats
>>> import numpy as np
>>> x = np.random.random(10)
>>> y = np.random.random(10)
>>> slope, intercept, r_value, p_value, std_err = stats.linregress(x,y)
>>> p_value
0.40795314163864016

根据文档,p-value是“假设检验的双侧p值,其零假设是斜率为零。”我希望得到相同的统计数据,但针对的是截距而不是斜率。

statsmodels.regression.linear_model.OLS返回开箱即用的两个系数的p值:

代码语言:javascript
运行
复制
>>> import numpy as np

>>> import statsmodels.api as sm

>>> X = sm.add_constant(x)
>>> model = sm.OLS(y,X)
>>> results = model.fit()
>>> results.pvalues
array([ 0.00297559,  0.40795314])    

仅使用scipy,我如何获得截取的p值(0.40795314163864016)?

EN

回答 1

Stack Overflow用户

发布于 2017-11-12 05:22:48

来自SciPy.org文档:https://docs.scipy.org/doc/scipy-.14.0/reference/generated/scipy.stats.linregress.html

在:打印“r平方:”,r_value**2

输出:R平方: 0.15286643777

对于其他参数,请尝试:

代码语言:javascript
运行
复制
print ('Intercept is: ', (intercept))
print ('Slope is: ', (slope))
print ('R-Value is: ', (r_value))
print ('Std Error is: ', (std_err))
print ('p-value is: ', (p_value))
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28753502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档