{"cells":[{"metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true},"cell_type":"code","source":"import os\n\nimport numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\nimport matplotlib.pyplot as plt # visualization library\n\n%matplotlib inline","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"79c7e3d0-c299-4dcb-8224-4455121ee9b0","_uuid":"d629ff2d2480ee46fbb7e2d37f6b5fab8052498a","trusted":true},"cell_type":"code","source":"TRAIN_PATH = os.path.join(\"..\", \"input\", \"train.csv\")\nTEST_PATH = os.path.join(\"..\", \"input\", \"test.csv\")\n\ntrain = pd.read_csv(TRAIN_PATH)\ntest = pd.read_csv(TEST_PATH)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"82e9ddbf0556acf8f555fab8d792ccca967eb9c9"},"cell_type":"code","source":"train = train[train['passenger_count']>= 1]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"96c85cff775d433673fedb38947728810f632ac4"},"cell_type":"code","source":"train = train[train['trip_duration']>= 90 ]\ntrain = train[train['trip_duration']<= 10800 ]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"6cd77aff4e6c1d4db449a6bbfea38195abd6f22f"},"cell_type":"code","source":"train = train.loc[train['pickup_longitude']> -80]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"6697f4e76d2a9e477ecb66b1e9e6aa3050f5cba7"},"cell_type":"code","source":"train = train.loc[train['pickup_latitude']< 44]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"1ab3e0e45be18ecaca7f145fc264acff37ab3033"},"cell_type":"code","source":"train = train.loc[train['dropoff_longitude']> -90]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"59d07a137018c05ba1816321c1d22a782d161c56"},"cell_type":"code","source":"train = train.loc[train['dropoff_latitude']> 34]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"dbaf3c2c68a36f67c814705cfa68bc396ed0c5db"},"cell_type":"code","source":"train['pickup_datetime'] = pd.to_datetime(train['pickup_datetime'], format='%Y-%m-%d %H:%M:%S')\ntest['pickup_datetime'] = pd.to_datetime(test['pickup_datetime'], format='%Y-%m-%d %H:%M:%S')","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"ec28562f3b6f83701a83d377f88fa414331fd543"},"cell_type":"code","source":"train['hour'] = train.loc[:,'pickup_datetime'].dt.hour;\ntrain['week'] = train.loc[:,'pickup_datetime'].dt.week;\ntrain['weekday'] = train.loc[:,'pickup_datetime'].dt.weekday;\ntrain['hour'] = train.loc[:,'pickup_datetime'].dt.hour;\ntrain['month'] = train.loc[:,'pickup_datetime'].dt.month;","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"2168485e450cd7456adaa56c88dd0c8bf844e930"},"cell_type":"code","source":"test['hour'] = test.loc[:,'pickup_datetime'].dt.hour;\ntest['week'] = test.loc[:,'pickup_datetime'].dt.week;\ntest['weekday'] = test.loc[:,'pickup_datetime'].dt.weekday;\ntest['hour'] = test.loc[:,'pickup_datetime'].dt.hour;\ntest['month'] = test.loc[:,'pickup_datetime'].dt.month;","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"6158b47c47de51267501224e949b7410703a7364"},"cell_type":"code","source":"train['dist'] = (abs(train['pickup_latitude']-train['dropoff_latitude'])\n                        + abs(train['pickup_longitude']-train['dropoff_longitude']))\ntest['dist'] = (abs(test['pickup_latitude']-test['dropoff_latitude'])\n                        + abs(test['pickup_longitude']-test['dropoff_longitude']))","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"d9b66a85443f0160d6e3f80a7dba543de4ea8a7b"},"cell_type":"code","source":"y_train = train[\"trip_duration\"]\nX_train = train[[\"vendor_id\", \"passenger_count\", \"pickup_longitude\", \"pickup_latitude\", \"dropoff_longitude\",\"dropoff_latitude\", \"dist\", \"hour\", \"week\", \"weekday\", \"month\" ]]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"3d7fcd1b105c8c78d779d709b3ca45f1d207d849"},"cell_type":"code","source":"from sklearn.ensemble import RandomForestRegressor","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"06046d2f6004f97335d655d832a9f512c0b434be"},"cell_type":"code","source":"from sklearn.model_selection import train_test_split\nX_train, X_valid, y_train, y_valid = train_test_split(X_train, y_train, random_state=42)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"669e0977d144e50a107a5722d89cbfc3a8808043"},"cell_type":"code","source":"m = RandomForestRegressor(n_estimators=20,min_samples_leaf=100, min_samples_split=150)\nm.fit(X_train, y_train)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"ffd7d860c3e2d4c46497a8105fa76bc8c661abcc"},"cell_type":"code","source":"X_test = test[[\"vendor_id\", \"passenger_count\",\"pickup_longitude\", \"pickup_latitude\",\"dropoff_longitude\",\"dropoff_latitude\",\"dist\", \"hour\", \"week\", \"weekday\", \"month\"]]\nprediction = m.predict(X_test)\nprediction","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"3af929e94fec741b8942a514c492b6164b98b8d8"},"cell_type":"code","source":"my_submission = pd.DataFrame({'id': test.id, 'trip_duration': prediction})\nmy_submission.head()","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"d161386c1a7ef5973870d1825df11655cad00e8a"},"cell_type":"code","source":"my_submission.to_csv('submission.csv', index=False)","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"name":"python","version":"3.6.6","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"}},"nbformat":4,"nbformat_minor":1}