おはようStackoverflow Community!ランダムフォレスト(Python)のターゲットと独立変数
"House Sales in King County"をランダムフォレストアルゴリズムで分析したいと考えています。これまではデータをロードしてデータを準備していましたが、適切なターゲットと独立変数を選択することは苦労しています。
私の目標は、データセットのすべての変数を入力変数として選択し、ターゲット変数を価格にすることです。
私のコード(以下を参照)は何とか今のところ働いていますが、私の目標に近いものでもありません(さまざまな変数による価格の予測)。私はいくつかのアプローチを試みました - しかし、すべてがエラーで終了しました(ラベルの数= 17はサンプルの数= 15128と一致しません)。
誰かがこれが原因で、非常に低いという推定の数のものであってもよい
# Load Libraries
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import roc_auc_score
from sklearn.cross_validation import train_test_split
import pandas as pd
dataset= pd.read_csv('kc_house_data.csv')
dataset = dataset.drop('id', axis=1)
dataset = dataset.drop('date', axis=1)
dataset = dataset.drop('zipcode', axis=1)
dataset = dataset.drop('long', axis=1)
cols = ['price', 'bathrooms', 'floors', 'bedrooms', 'sqft_living', 'sqft_lot', 'waterfront', 'view', 'condition', 'grade', 'lat', 'sqft_above']
dataset[cols] = dataset[cols].applymap(np.int64)
print(dataset.shape)
print(dataset.dtypes)
# Splitting Dataset
Train,Test = train_test_split(dataset, test_size = 0.3, random_state = 176)
Train_IndepentVars = Train.values[:, 3:5]
Train_TargetVar = Train.values[:,5]
Test_IndepentVars = Test.values[:, 3:5]
Test_TargetVar = Test.values[:,5]
##RF
main=['view', 'bedrooms', 'floors', 'grade']
rf_model = RandomForestClassifier(max_depth=30,n_estimators=15)
rf_model.fit(Train_IndepentVars, Train_TargetVar)
predictions = rf_model.predict(Train_IndepentVars)
###Confusion Matrix
from sklearn.metrics import confusion_matrix
# Confusion Matrix
print(" Confusion matrix ", confusion_matrix(Train_TargetVar, predictions))
importance = rf_model.feature_importances_
importance = pd.DataFrame(importance, index=Train.columns[3:5],
columns=["Importance"])
print(importance)
ありがとうございました! 「見積もり人数」とはどういう意味ですか?それはまさにポイントです - 私は3つ以上の機能を使用したい - しかし、私はどのようにコードの面では分かりません。 –
私は自分の答えを編集しました。それを見てください。 – pissall
コードありがとうございます!残念ながら、タイプエラー: '['バスルーム '、'フロア '、'ベッドルーム '、' sqft_living '、' sqft_lot '、' waterfront '、' view '、' condition '、' grade ' 'sqft_above'] 'は無効なキーです。 –