官术网_书友最值得收藏!

Handling time values

Time values play an important role in our model because time is both a feature and a target (value to be predicted) in our model. First, we need to convert the pickup and dropoff times into pandas datetime values to calculate the target value, which will be the natural log of the difference in time between dropoff and pickup in seconds:

df["trip_duration"] = np.log((df.Lpep_dropoff_datetime - df.lpep_pickup_datetime).dt.seconds + 1)

In the preceding line of code, we are adding 1 second to the trip duration to prevent an undefined error when a log transformation is applied over the value.

But why are we using natural log transformation over the trip duration? There are three reasons for this, as follows:

  • For the Kaggle competition on New York taxi trip duration prediction, the evaluation metric is defined as the Root Mean Squared Logarithmic Error (RMSLE). When log transformation is applied and the RMSE is calculated over the target values, we get the RMSLE. This helps us compare our results with the best-performing teams. 
  • Errors in log scale let us know by how many factors we were wrong, for example, whether we were 10% off from the actual values or 70% off. We will be discussing this in detail when we look at the Error metric section.
  • The log transformation over the target variable follows a perfectly normal distribution. This satisfies one of the assumptions of linear regression. The plot of the trip duration values (on a log scale) looks as follows:
主站蜘蛛池模板: 南昌市| 景泰县| 浦城县| 屏东县| 陆良县| 肇东市| 赫章县| 老河口市| 大渡口区| 建阳市| 白朗县| 建昌县| 汉源县| 无极县| 禹城市| 弥勒县| 阳泉市| 双峰县| 区。| 乐清市| 东莞市| 定州市| 济宁市| 灌阳县| 武宣县| 甘泉县| 登封市| 永德县| 宜良县| 陆良县| 云安县| 绩溪县| 镇江市| 永定县| 宁河县| 麦盖提县| 大厂| 云阳县| 迭部县| 剑河县| 辽阳县|