mirror of
https://github.com/jackhftang/xgboost.nim
synced 2026-01-14 11:41:33 +00:00
No description
| docs | ||
| example | ||
| src | ||
| tests | ||
| .gitignore | ||
| .release-it.json | ||
| LICENSE | ||
| README.md | ||
| xgboost.nimble | ||
xgboost.nim
Nim binding of xgboost 1.4.x
Installation
This binding depends on the shared library of xgboost. You should be able to build it with the following commands.
nimble clone_xgboost
nimble build_xgboost
The resulting shared library should be located in ./xgboost/lib/.
If you encouter issues during build, consult the installation guide of xgboost.
Usage
import xgboost
proc main() =
# global config
xgbSetGlobalConfig(%*{
"verbosity": 3
})
# https://github.com/dmlc/xgboost/tree/master/demo/data
let dtrain = newXGDMatrix("agaricus.txt.train")
let dtest = newXGDMatrix("agaricus.txt.test")
# train
let booster = train({
"max_depth": "2",
"eta": "1",
"objective": "binary:logistic"
}, dtrain)
# predict
let res = booster.predict(dtest)
echo res
# save model
booster.saveModel("agaricus.txt.model")
when isMainModule:
main()
API
see here