私はこのようなものでscipyのダウンロードのlinregress()
を使って自分のデータ間で最小二乗ラインにフィットするようにしようとしている:線形回帰のy切片値を修正するにはどうすればよいですか?
from scipy import stats
import numpy as np
y = [30, 60, 19, 28, 41, 49, 62, 75, 81]
x = np.arange(0,9)
grad, intercept, r_value, p_value, std_err = stats.linregress(x,y)
しかし、私はまた、特定の時点で、y切片を修正したいと思います。
理想的には、y
リストの最初の値で修正する予定です。言い換えれば、私が実際にやろうとしているのは、ベストフィットラインがy
リストの最初の値を通過するようにすることです。これは私の例では30です。
しかし、Scipyが私にとってy切片を決定しているようです。
scipyの線形回帰法でy切片を特定の値に固定するにはどうすればよいですか?
PS:私もstatsmodelsのOLSを使ってみましたが、y-インターセプト= 0のままにしておくか、最善の傍受を決めることしかできません。
res = OLS(y - 30., x).fit()
Xは切片(ものの列)なしで説明変数が含まれています。あなたはそう原点はゼロであり、切片を除外Yをシフトさせることができるstatsmodelsで