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

Using the model for prediction

Let's say we have unseen data of TV ad spending and that we want to know their corresponding impact on the sales of the company. So, we need to use the learned model to do that for us. Let's suppose that we want to know how much sales will increase from $50000 of TV advertising.

Let's use our learned model coefficients to make such a calculation:

y = 7.032594 + 0.047537 x 50 

# manually calculating the increase in the sales based on $50k
7.032594 + 0.047537*50000

Output:

9,409.444

We can also use Statsmodels to make the prediction for us. First, we need to provide the TV ad value in a pandas DataFrame since the Statsmodels interface expects it:

# creating a Pandas DataFrame to match Statsmodels interface expectations
new_TVAdSpending = pd.DataFrame({'TV': [50000]})
new_TVAdSpending.head()

Output:

Now, we can go ahead and use the predict function to predict the sales value:

# use the model to make predictions on a new value
preds = lm.predict(new_TVAdSpending)

Output:

array([ 9.40942557])

Let's see how the learned least squares line looks. In order to draw the line, we need two points, with each point represented by this pair: (x, predict_value_of_x).

So, let's take the minimum and maximum values for the TV ad feature:

# create a DataFrame with the minimum and maximum values of TV
X_min_max = pd.DataFrame({'TV': [advertising_data.TV.min(), advertising_data.TV.max()]})
X_min_max.head()

Output:

Let's get the corresponding predictions for these two values:

# predictions for X min and max values
predictions = lm.predict(X_min_max)
predictions

Output:

array([  7.0658692,  21.12245377])

Now, let's plot the actual data and then fit it with the least squares line:

# plotting the acutal observed data
advertising_data.plot(kind='scatter', x='TV', y='sales')
#plotting the least squares line
plt.plot(new_TVAdSpending, preds, c='red', linewidth=2)

Output:

Figure 4: Plot of the actual data and the least squares line

Extensions of this example and further explanations will be explained in the next chapter.

主站蜘蛛池模板: 浏阳市| 正安县| 曲阳县| 庆安县| 祁连县| 宁海县| 英吉沙县| 庆云县| 玛多县| 侯马市| 台山市| 东光县| 莱阳市| 神木县| 尖扎县| 福泉市| 增城市| 祁门县| 新沂市| 通州区| 南陵县| 六安市| 和顺县| 思南县| 林州市| 南皮县| 六盘水市| 固始县| 彰武县| 昂仁县| 安福县| 体育| 正阳县| 嘉义县| 浙江省| 贵德县| 海宁市| 锡林郭勒盟| 邢台市| 麻阳| 开远市|