{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"**Created by Sanskar Hasija**\n\n**🤖🤖H2O.ai AutoML Regression-House Price Prediction**\n\n**15 NOVEMBER 2021**\n","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19"}},{"cell_type":"markdown","source":"# <center> 🤖🤖H2O.AI AUTOML REGRESSION-HOUSE PRICE PREDICTION</center>\n## <center>If you find this notebook useful, support with an upvote👍</center>","metadata":{"execution":{"iopub.status.busy":"2021-11-16T04:46:45.042381Z","iopub.execute_input":"2021-11-16T04:46:45.04271Z","iopub.status.idle":"2021-11-16T04:46:45.064237Z","shell.execute_reply.started":"2021-11-16T04:46:45.042607Z","shell.execute_reply":"2021-11-16T04:46:45.063598Z"}}},{"cell_type":"markdown","source":"# Imports","metadata":{}},{"cell_type":"code","source":"from IPython.display import clear_output\n\nimport numpy as np\nimport pandas as pd\n\nimport h2o\nfrom h2o.automl import H2OAutoML","metadata":{"execution":{"iopub.status.busy":"2022-08-14T11:26:57.759484Z","iopub.execute_input":"2022-08-14T11:26:57.759761Z","iopub.status.idle":"2022-08-14T11:26:57.765252Z","shell.execute_reply.started":"2022-08-14T11:26:57.759729Z","shell.execute_reply":"2022-08-14T11:26:57.763191Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Initializing H20 Cluster","metadata":{}},{"cell_type":"code","source":"from h2o.automl import H2OAutoML\nh2o.init()","metadata":{"execution":{"iopub.status.busy":"2022-08-14T11:26:57.769962Z","iopub.execute_input":"2022-08-14T11:26:57.770342Z","iopub.status.idle":"2022-08-14T11:26:57.862750Z","shell.execute_reply.started":"2022-08-14T11:26:57.770314Z","shell.execute_reply":"2022-08-14T11:26:57.861995Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Data Loading and Preprocessing","metadata":{}},{"cell_type":"code","source":"train = pd.read_csv(\"../input/house-prices-advanced-regression-techniques/train.csv\")\ntest = pd.read_csv(\"../input/house-prices-advanced-regression-techniques/test.csv\")\nsubs = pd.read_csv(\"../input/house-prices-advanced-regression-techniques/sample_submission.csv\")\n\ntrain = h2o.H2OFrame(train)\ntest = h2o.H2OFrame(test)","metadata":{"execution":{"iopub.status.busy":"2022-08-14T11:26:57.864368Z","iopub.execute_input":"2022-08-14T11:26:57.865105Z","iopub.status.idle":"2022-08-14T11:26:59.079982Z","shell.execute_reply.started":"2022-08-14T11:26:57.865048Z","shell.execute_reply":"2022-08-14T11:26:59.079144Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"train.describe()","metadata":{"_kg_hide-input":true,"execution":{"iopub.status.busy":"2022-08-14T11:26:59.081144Z","iopub.execute_input":"2022-08-14T11:26:59.081532Z","iopub.status.idle":"2022-08-14T11:26:59.134906Z","shell.execute_reply.started":"2022-08-14T11:26:59.081495Z","shell.execute_reply":"2022-08-14T11:26:59.134124Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# AutoML","metadata":{}},{"cell_type":"code","source":"RANDOM_STATE = 12\nRUNTIME = 60 #3 Hours\nN_FOLDS = 5\n\nx = train.columns\ny = \"SalePrice\"\nx.remove(y)\nx.remove('Id')","metadata":{"_kg_hide-input":true,"execution":{"iopub.status.busy":"2022-08-14T11:26:59.136033Z","iopub.execute_input":"2022-08-14T11:26:59.136717Z","iopub.status.idle":"2022-08-14T11:26:59.145376Z","shell.execute_reply.started":"2022-08-14T11:26:59.136679Z","shell.execute_reply":"2022-08-14T11:26:59.144667Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"aml = H2OAutoML(nfolds=N_FOLDS, seed=RANDOM_STATE, max_runtime_secs=RUNTIME)\naml.train(x=x, y=y, training_frame=train)","metadata":{"execution":{"iopub.status.busy":"2022-08-14T11:26:59.147232Z","iopub.execute_input":"2022-08-14T11:26:59.147968Z","iopub.status.idle":"2022-08-14T11:28:00.449865Z","shell.execute_reply.started":"2022-08-14T11:26:59.147925Z","shell.execute_reply":"2022-08-14T11:28:00.449066Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Results Leaderboard","metadata":{}},{"cell_type":"markdown","source":"### Top 10 models","metadata":{}},{"cell_type":"code","source":"lb = aml.leaderboard\nlb.head(10)","metadata":{"execution":{"iopub.status.busy":"2022-08-14T11:28:00.453879Z","iopub.execute_input":"2022-08-14T11:28:00.455940Z","iopub.status.idle":"2022-08-14T11:28:00.532569Z","shell.execute_reply.started":"2022-08-14T11:28:00.455898Z","shell.execute_reply":"2022-08-14T11:28:00.531758Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"### Submission","metadata":{}},{"cell_type":"code","source":"preds = aml.leader.predict(test)\nclear_output()\nsub = preds[0].as_data_frame()  ## Converting to dataframe\nsubs['SalePrice'] = sub\nsubs.to_csv('h20.ai-automl.csv',index = False)\nsubs.head()","metadata":{"execution":{"iopub.status.busy":"2022-08-14T11:28:00.536666Z","iopub.execute_input":"2022-08-14T11:28:00.539005Z","iopub.status.idle":"2022-08-14T11:28:01.021687Z","shell.execute_reply.started":"2022-08-14T11:28:00.538958Z","shell.execute_reply":"2022-08-14T11:28:01.015754Z"},"trusted":true},"execution_count":null,"outputs":[]}]}