我目前正在研究来自 kaggle 的 BNP Paribas Cardiff Claim Management 数据集,并且我已经在 python(jupyter notebook)上为火车数据集编写了我的代码,我使用了其中的 20% 进行测试。这项研究要求我在完全不同的数据集 test.csv 上测试我的模型,并将预测的概率附加到 sample_sumbission.csv 上。我该怎么做。由于我使用特征选择技术对训练数据集进行了许多调整,因此我必须做出哪些改变
答案 0 :(得分:0)
让我们定义以下内容:
Xtrain - Training data with shape nxm where n is number of records and m is features
ytrain - Target for each row in Xtrain
model - The chosen model
ypred_train - model(Xtrain)
我假设您有一个数据集 data
,其中您已经完成了一些清理/特征工程,例如 Xtrain = clean(data)
。
由于您的模型是在 Xtrain
上训练的,该 clean
已使用 Xtest = clean(data_test)
“转换”过,因此您需要确保 clean
你可以用不同的方式来做,最简单的是
def clean(X):
""" Cleans the data in X
input
------
X: pandas.DataFrame
"""
X["sum"] = X["feature1"] + X["feature2"]
X["lower"] = X["string_feature"].str.lower()
X.drop(columns=["string"], inplace=True)
return X #Cleaned data
例如Xtrain = clean(data)
Xtest = clean(data_test)
ytest = model(Xtest)
然后你就可以简单地做
clean
import 'dart:html' as html;
import 'dart:js_util' as js_util;
url = html.Url(provider); // Not defined
url.hash = html.UrlSearchParams(js_util.jsify({
'origin': html.window.location.origin,
})).toString();
中所做的工作,您可以查看 pipelines