У меня проблемы с этим. Я пытаюсь сделать линейную регрессию и проверить наклон. Стьюдентный тест проверяет, далеко ли наклон от 0. Наклон может быть отрицательным или положительным. Меня интересуют только отрицательные наклоны.
В этом примере наклон положителен, что меня не интересует, поэтому значение P должно быть большим. Но он маленький, потому что прямо сейчас он проверяет, далеко ли наклон от 0 в любом направлении. (Я принудительно перехватываю ноль, чего и хочу). Может ли кто-нибудь помочь мне с синтаксисом, чтобы увидеть, является ли наклон только отрицательным. В этом случае значение P должно быть большим.
И как я могу перейти, скажем, на уровень достоверности 99%, или 95%, или...?
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)