fix attribute accessors C-interface for R
This commit is contained in:
parent
b5fb437aa7
commit
0839aed380
@ -229,27 +229,6 @@ SEXP XGBoosterCreate_R(SEXP dmats) {
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
SEXP XGBoosterGetAttr_R(SEXP handle, SEXP name) {
|
|
||||||
const char* ret;
|
|
||||||
R_API_BEGIN();
|
|
||||||
int success;
|
|
||||||
CHECK_CALL(XGBoosterGetAttr(R_ExternalPtrAddr(handle),
|
|
||||||
CHAR(asChar(name)),
|
|
||||||
&ret,
|
|
||||||
&success));
|
|
||||||
R_API_END();
|
|
||||||
return mkString(ret);
|
|
||||||
}
|
|
||||||
|
|
||||||
SEXP XGBoosterSetAttr_R(SEXP handle, SEXP name, SEXP val) {
|
|
||||||
R_API_BEGIN();
|
|
||||||
CHECK_CALL(XGBoosterSetAttr(R_ExternalPtrAddr(handle),
|
|
||||||
CHAR(asChar(name)),
|
|
||||||
CHAR(asChar(val))));
|
|
||||||
R_API_END();
|
|
||||||
return R_NilValue;
|
|
||||||
}
|
|
||||||
|
|
||||||
SEXP XGBoosterSetParam_R(SEXP handle, SEXP name, SEXP val) {
|
SEXP XGBoosterSetParam_R(SEXP handle, SEXP name, SEXP val) {
|
||||||
R_API_BEGIN();
|
R_API_BEGIN();
|
||||||
CHECK_CALL(XGBoosterSetParam(R_ExternalPtrAddr(handle),
|
CHECK_CALL(XGBoosterSetParam(R_ExternalPtrAddr(handle),
|
||||||
@ -388,3 +367,32 @@ SEXP XGBoosterDumpModel_R(SEXP handle, SEXP fmap, SEXP with_stats) {
|
|||||||
R_API_END();
|
R_API_END();
|
||||||
return out;
|
return out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SEXP XGBoosterGetAttr_R(SEXP handle, SEXP name) {
|
||||||
|
SEXP out;
|
||||||
|
R_API_BEGIN();
|
||||||
|
int success;
|
||||||
|
const char *val;
|
||||||
|
CHECK_CALL(XGBoosterGetAttr(R_ExternalPtrAddr(handle),
|
||||||
|
CHAR(asChar(name)),
|
||||||
|
&val,
|
||||||
|
&success));
|
||||||
|
if (success) {
|
||||||
|
out = PROTECT(allocVector(STRSXP, 1));
|
||||||
|
SET_STRING_ELT(out, 0, mkChar(val));
|
||||||
|
} else {
|
||||||
|
out = PROTECT(R_NilValue);
|
||||||
|
}
|
||||||
|
UNPROTECT(1);
|
||||||
|
R_API_END();
|
||||||
|
return out;
|
||||||
|
}
|
||||||
|
|
||||||
|
SEXP XGBoosterSetAttr_R(SEXP handle, SEXP name, SEXP val) {
|
||||||
|
R_API_BEGIN();
|
||||||
|
CHECK_CALL(XGBoosterSetAttr(R_ExternalPtrAddr(handle),
|
||||||
|
CHAR(asChar(name)),
|
||||||
|
CHAR(asChar(val))));
|
||||||
|
R_API_END();
|
||||||
|
return R_NilValue;
|
||||||
|
}
|
||||||
|
|||||||
@ -101,23 +101,6 @@ XGB_DLL SEXP XGDMatrixNumCol_R(SEXP handle);
|
|||||||
*/
|
*/
|
||||||
XGB_DLL SEXP XGBoosterCreate_R(SEXP dmats);
|
XGB_DLL SEXP XGBoosterCreate_R(SEXP dmats);
|
||||||
|
|
||||||
/*!
|
|
||||||
* \brief get learner attribute value
|
|
||||||
* \param handle handle
|
|
||||||
* \param name attribute name
|
|
||||||
* \return string containing attribute value
|
|
||||||
*/
|
|
||||||
XGB_DLL SEXP XGBoosterGetAttr_R(SEXP handle, SEXP name);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* \brief set learner attribute value
|
|
||||||
* \param handle handle
|
|
||||||
* \param name attribute name
|
|
||||||
* \param val attribute value
|
|
||||||
* \return R_NilValue
|
|
||||||
*/
|
|
||||||
XGB_DLL SEXP XGBoosterSetAttr_R(SEXP handle, SEXP name, SEXP val);
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief set parameters
|
* \brief set parameters
|
||||||
* \param handle handle
|
* \param handle handle
|
||||||
@ -202,4 +185,22 @@ XGB_DLL SEXP XGBoosterModelToRaw_R(SEXP handle);
|
|||||||
* \param with_stats whether dump statistics of splits
|
* \param with_stats whether dump statistics of splits
|
||||||
*/
|
*/
|
||||||
XGB_DLL SEXP XGBoosterDumpModel_R(SEXP handle, SEXP fmap, SEXP with_stats);
|
XGB_DLL SEXP XGBoosterDumpModel_R(SEXP handle, SEXP fmap, SEXP with_stats);
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief get learner attribute value
|
||||||
|
* \param handle handle
|
||||||
|
* \param name attribute name
|
||||||
|
* \return character containing attribute value
|
||||||
|
*/
|
||||||
|
XGB_DLL SEXP XGBoosterGetAttr_R(SEXP handle, SEXP name);
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief set learner attribute value
|
||||||
|
* \param handle handle
|
||||||
|
* \param name attribute name
|
||||||
|
* \param val attribute value
|
||||||
|
* \return R_NilValue
|
||||||
|
*/
|
||||||
|
XGB_DLL SEXP XGBoosterSetAttr_R(SEXP handle, SEXP name, SEXP val);
|
||||||
|
|
||||||
#endif // XGBOOST_WRAPPER_R_H_ // NOLINT(*)
|
#endif // XGBOOST_WRAPPER_R_H_ // NOLINT(*)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user