NumPyを使用してPythonで多変量回帰を実行することは可能ですか?
ドキュメントhereはそうであることを示唆していますが、トピックに関する詳細は見つかりません。
NumPyを使用してPythonで多変量回帰を実行することは可能ですか?
ドキュメントhereはそうであることを示唆していますが、トピックに関する詳細は見つかりません。
はい、これをダウンロードします ( http://www.scipy.org/Cookbook/OLS?action=AttachFile&do=get&target=ols.0.2.py ) http://www.scipy.org/Cookbook/OLSから
または、R と python-R リンクをインストールできます。R は何でもできます。
あなたがリンクしたウェブページは、numpy.linalg.lstsqを最小化するベクトル x を見つけるために言及しています|b - Ax|
。以下に、その使用方法の小さな例を示します。
まず、いくつかの「ランダム」データをセットアップします。
import numpy as np
c1,c2 = 5.0,2.0
x = np.arange(1,11)/10.0
y = c1*np.exp(-x)+c2*x
b = y + 0.01*max(y)*np.random.randn(len(y))
A = np.column_stack((np.exp(-x),x))
c,resid,rank,sigma = np.linalg.lstsq(A,b)
print(c)
# [ 4.96579654 2.03913202]
scipy.optimize.leastsq
関数を調べてみるとよいでしょう。かなり複雑ですが、多変量回帰を行いたいときにそれを調べていたことを覚えているようです。(かなり前なので記憶違いかもしれません)