機械学習初心者です。
以下のプログラムを書いたのですが、テスト結果の回帰直線が訓練用のデータ分布に沿わず、垂直になってしまいます。何がおかしいのかヒントをいただけますか?
python
1from sklearn import datasets 2from sklearn import linear_model 3import numpy as np 4import matplotlib.pyplot as plt 5from pandas import DataFrame 6 7boston = datasets.load_boston() 8boston_df = DataFrame(boston.data) 9boston_df.columns = boston.feature_names 10 11rooms_train = DataFrame(boston_df["RM"]) 12y_train = boston.target 13model = linear_model.LinearRegression() 14model.fit(rooms_train, y_train) 15 16rooms_test = DataFrame(np.arange(rooms_train.min(),rooms_train.max(),0.1)) 17prices_test = model.predict(rooms_test) 18 19plt.scatter(rooms_train,y_train,c="b",alpha=0.5) 20 21plt.plot(rooms_test,prices_test,c="r") 22 23plt.title("Boston House Prices dataset") 24plt.xlabel("rooms") 25plt.ylabel("price $1000's") 26 27
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/15 08:06 編集
2018/01/16 00:56 編集