我有这个问题。我正在尝试做线性回归并测试斜率。 t检验检查斜率是否远离0.斜率可以是负值也可以是正值。我只对负斜率感兴趣。线性回归的单侧t检验?
在这个例子中,斜率是正值,我不感兴趣,所以P值应该很大。但它很小,因为现在它测试斜率是否远离0,在任一方向。 (我强制截取零,这是我想要的)。有人可以用语法来帮助我看看斜率是否只有负值。在这种情况下,P值应该很大。
而我该如何改变,说99%的置信度或95%或......?对于双向t检验
import statsmodels.api as sm
import matplotlib.pyplot as plt
import numpy
X = [-0.013459134, 0.01551033, 0.007354476, 0.014686473, -0.014274754, 0.007728445, -0.003034186, -0.007409397]
Y = [-0.010202462, 0.003297546, -0.001406498, 0.004377665, -0.009244517, 0.002136552, 0.006877126, -0.001494624]
regression_results = sm.OLS (Y, X, missing = "drop").fit()
P_value = regression_results.pvalues [0]
R_squared = regression_results.rsquared
K_slope = regression_results.params [0]
conf_int = regression_results.conf_int()
low_conf_int = conf_int [0][0]
high_conf_int = conf_int [0][1]
fig, ax = plt.subplots()
ax.grid (True)
ax.scatter (X, Y, alpha = 1, color='orchid')
x_pred = numpy.linspace (min (X), max (X), 40)
y_pred = regression_results.predict (x_pred)
ax.plot (x_pred, y_pred, '-', color='darkorchid', linewidth=2)
我投票结束这个问题作为题外话,因为这不是一个Python问题,而是一个统计数据。属于[CrossValidated](http://stats.stackexchange.com/) – MSalters
这是一个关于编程的问题。 statsmodels目前不支持模型结果中的单向t_test。 – user333700