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

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.

主站蜘蛛池模板: 灵丘县| 德兴市| 怀柔区| 大荔县| 孟连| 花莲县| 梁河县| 楚雄市| 星子县| 天津市| 普宁市| 乾安县| 库尔勒市| 吴堡县| 桃江县| 蓝田县| 米脂县| 准格尔旗| 金乡县| 桐庐县| 衡阳县| 永德县| 凤台县| 厦门市| 交口县| 从江县| 开远市| 汪清县| 大姚县| 天台县| 卢氏县| 泰宁县| 潍坊市| 内黄县| 景谷| 嵊州市| 安吉县| 宁晋县| 绩溪县| 贡嘎县| 轮台县|