繁体   English   中英

H2OTypeError:参数应该是 ? 整数,得到 int64 [3.30.1.1]

[英]H2OTypeError: Argument should be an ?integer, got int64 [3.30.1.1]

我正在尝试将 hyperopt 与 H2O XGBoost 一起简单使用,为此我从一个 numpy 数组中取出元素作为参数,但是我得到了这个 H2OTypeError 并且我不明白为什么?integer的条件不是遇到了int64

为了简化示例,H2O XGBoost 在调用时确实有效:

xgb = H2OXGBoostEstimator(nfolds=5, max_depth=list(range(10,11))[0])

但以下返回此 H2OTypeError:

xgb = H2OXGBoostEstimator(nfolds=5, max_depth=np.arange(10,11,1)[0])

...

H2OTypeError: Argument `max_depth` should be an ?integer, got int64

我现在可以解决这个错误,但我不明白。

H2O 期待本机 Python int ,但您传递的是numpy int64 此处解释有关差异的更多信息。

尝试将 numpy 数组转换为列表max_depth=np.arange(10,11,1).tolist()[0]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM