我是数据科学和分析的新手。
在 Kaggle 上研究了很多内核之后,我制作了一个模型来预测房产的价格。我已经使用我的训练数据测试了这个模型,但现在我想在我的测试数据上运行它。我有一个 test.csv 文件,我想使用它。我怎么做?
我之前用我的训练数据集做了什么:

#loading my train dataset into python
train = pd.read_csv('/Users/sohaib/Downloads/test.csv')

#factors that will predict the price
train_pr = ['OverallQual','GrLivArea','GarageCars','TotalBsmtSF','FullBath','YearBuilt']

#set my model to DecisionTree
model = DecisionTreeRegressor()

#set prediction data to factors that will predict, and set target to SalePrice
prdata = train[train_pr]
target = train.SalePrice

#fitting model with prediction data and telling it my target
model.fit(prdata, target)

model.predict(prdata.head())

现在我试图做的是,复制整个代码,用“test”改变“train”,用“testprdata”改变“predate”,我认为它会起作用,但遗憾的是没有。我知道我做错了什么,不知道是什么。

最佳答案

只要您以完全相同的方式处理训练和测试数据,该 predict 函数将适用于任一数据集。因此,您需要同时加载火车和测试集、火车上的 fitpredict 仅在测试或火车和测试上。

另外,请注意您正在阅读的文件是 test 数据。假设您的文件命名正确,即使您将变量命名为 train ,您目前也在对测试数据进行训练。

#loading my train dataset into python
train = pd.read_csv('/Users/sohaib/Downloads/train.csv')
test = pd.read_csv('/Users/sohaib/Downloads/test.csv')

#factors that will predict the price
desired_factors = ['OverallQual','GrLivArea','GarageCars','TotalBsmtSF','FullBath','YearBuilt']

#set my model to DecisionTree
model = DecisionTreeRegressor()

#set prediction data to factors that will predict, and set target to SalePrice
train_data = train[desired_factors]
test_data = test[desired_factors]
target = train.SalePrice

#fitting model with prediction data and telling it my target
model.fit(train_data, target)

model.predict(test_data.head())

关于python - 使用基于训练数据集的模型预测测试数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45681387/

10-11 03:53
查看更多