问题描述
我正在使用 xgboost 进行排名,请考虑以下代码:
X_train = train_data.loc[:,~train_data.columns.isin(['id','rank'])]
y_train = train_data.loc[:,train_data.columns.isin(['rank'])]
groups = train_data.groupby('id').size().to_frame('size')['size'].to_numpy()
X_test = test_data.loc[:,~test_data.columns.isin(['rank'])]
y_test = test_data.loc[:,test_data.columns.isin(['rank'])]
因为需要保留 id 以供以后预测。下面的代码对吗?
def predict(model,df):
return model.predict(df.loc[:,~df.columns.isin(['id'])])
predictions = (X_test.groupby('id')
.apply(lambda X_test: predict(model,X_test)))
值越高越好吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)