Python Predict() 函数——你需要知道的一切!

嘿,读者们!在本文中,我们将详细介绍Python Predict() 函数。那么,让我们现在开始吧!


理解Python中的predict()函数

在数据科学领域,我们需要在数据集上应用不同的机器学习模型来训练数据。此外,我们尝试预测未经训练的数据的值。

这时,predict() 函数就派上用场了。

Python的predict()函数使我们能够根据训练好的模型来预测数据值的标签。

语法

model.predict(data)

Predict() 函数仅接受一个参数,该参数通常是要测试的数据。

它根据从模型获得的学习或训练数据返回作为参数传递的数据的标签。

因此,predict() 函数在经过训练的模型之上工作,并利用学习到的标签来映射和预测要测试的数据的标签。


实现Python的predict()函数

让我们首先将数据集加载到环境中。pandas.read_csv () 函数使我们能够从系统加载数据集。

您可以在此处找到数据集

由于数据集也包含分类变量,因此我们创建了分类特征的虚拟变量,以便于使用pandas.get_dummies()函数进行建模。

此外,我们使用该函数将数据集分为训练数据集和测试train_test_split()数据集。

import os
import pandas
 
#Changing the current working directory
os.chdir("D:/Ediwsor_Project - Bike_Rental_Count")
BIKE = pandas.read_csv("Bike.csv")
bike = BIKE.copy()
 
categorical_col_updated = ['season','yr','mnth','weathersit','holiday']
bike = pandas.get_dummies(bike, columns = categorical_col_updated)
 
#Separating the dependent and independent data variables into two data frames.
from sklearn.model_selection import train_test_split
 
X = bike.drop(['cnt'],axis=1)
Y = bike['cnt']
 
# Splitting the dataset into 80% training data and 20% testing data.
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=.20, random_state=0)

现在,让我们在接下来的部分重点讨论预测算法的实现。


将 Predict() 函数与决策树结合使用

现在,我们在上面的分割数据集上应用了决策树算法predict() function,并根据决策树模型预测的值来预测测试数据集的标签。

#Building the Decision Tree Model on our dataset
from sklearn.tree import DecisionTreeRegressor
DT_model = DecisionTreeRegressor(max_depth=5).fit(X_train,Y_train)
DT_predict = DT_model.predict(X_test) #Predictions on Testing data
print(DT_predict)

输出:

决策树预测

将 Predict() 函数与 Knn 算法结合使用

在此示例中,我们使用Knn 算法对数据集进行预测。我们已将该KNeighborsRegressor()函数应用于训练数据。

此外,我们还对测试数据集的预测应用了 Predict() 函数。

Building the KNN Model on our dataset
from sklearn.neighbors import KNeighborsRegressor
KNN_model = KNeighborsRegressor(n_neighbors=3).fit(X_train,Y_train)
KNN_predict = KNN_model.predict(X_test) #Predictions on Testing data
print(KNN_predict)

输出:

KNN预测

结论

至此,我们这个话题就结束了。如果您遇到任何问题,请随时在下面评论!

有关更多与 Python 相关的此类帖子,请继续关注,直到那时,快乐学习!🙂