我们正在使用H2O 3.10.4.7开发Java程序,我们需要检索有关框架中所有列的元数据,例如列名和数据类型。相关问题(未解决,问题不同)here。
我们的期望是water.bindings.H2oApi
客户端就像REST端点一样工作,我们想要使用Javadoc中描述的H2oApi方法frameColumns(FrameKeyV3 frameId)
:
"返回Frame中的所有列。"
但结果不包含任何与列相关的信息。 当我们通过浏览器使用REST端点时,我们会像预期的那样获得有关帧中列的详细信息。例子:
H2oApi:
FramesV3 params = new FramesV3();
params.frameId = stringToKey(frame, FrameKeyV3.class); // "frame" reference from import process, works
// try with frameColumns()
FramesV3 frameColumns = api.frameColumns(params);
System.out.println(frameColumns.toString()); // "columns" not included in JSON response
结果:
{
"column":"",
"row_offset":0,
"row_count":0,
"column_offset":0,
"column_count":0,
"find_compatible_models":false,
"path":"",
"force":false,
"num_parts":1,
"frames":[
{
"frame_id":{
"name":"3d257aae-7266-48a1-8f35-1243436616ab",
"type":"Key\u003cFrame\u003e",
"URL":"/3/Frames/3d257aae-7266-48a1-8f35-1243436616ab"
},
"byte_size":1928,
"is_text":false,
"_exclude_fields":""
}
],
"_exclude_fields":""
}
REST端点:
http://localhost:54321/3/Frames/3d257aae-7266-48a1-8f35-1243436616ab/columns
结果:
{
"__meta": {
"schema_version": 3,
"schema_name": "FramesV3",
"schema_type": "Frames"
},
"_exclude_fields": "",
"row_offset": 0,
"row_count": 0,
"column_offset": 0,
"column_count": 0,
"job": null,
"frames": [
{
"__meta": {
"schema_version": 3,
"schema_name": "FrameV3",
"schema_type": "Frame"
},
"_exclude_fields": "",
"frame_id": {
"__meta": {
"schema_version": 3,
"schema_name": "FrameKeyV3",
"schema_type": "Key<Frame>"
},
"name": "3d257aae-7266-48a1-8f35-1243436616ab",
"type": "Key<Frame>",
"URL": "/3/Frames/3d257aae-7266-48a1-8f35-1243436616ab"
},
"byte_size": 1928,
"is_text": false,
"row_offset": 0,
"row_count": 100,
"column_offset": 0,
"column_count": 5,
"total_column_count": 5,
"checksum": -7731554748204616990,
"rows": 150,
"num_columns": 5,
"default_percentiles": [
0.001,
0.01,
0.1,
0.2,
0.25,
0.3,
0.3333333333333333,
0.4,
0.5,
0.6,
0.6666666666666666,
0.7,
0.75,
0.8,
0.9,
0.99,
0.999
],
"columns": [
{
"__meta": {
"schema_version": 3,
"schema_name": "ColV3",
"schema_type": "Vec"
},
"label": "sepal_length",
"missing_count": 0,
"zero_count": 0,
"positive_infinity_count": 0,
"negative_infinity_count": 0,
"mins": [
4.3,
4.4,
4.4,
4.4,
4.5
],
"maxs": [
7.9,
7.7,
7.7,
7.7,
7.7
],
"mean": 5.843333333333334,
"sigma": 0.8280661279778637,
"type": "real",
"domain": null,
"domain_cardinality": 0,
"data": [ ... ]
"string_data": null,
"precision": 1,
"histogram_bins": null,
"histogram_base": 0.0,
"histogram_stride": 0.0,?
"percentiles": null
...
}
我们对JSON实体感兴趣&#34;列&#34;检索我们需要的元数据,但H2o Java Api不提供它。
祝你好运!
尼科
答案 0 :(得分:0)
正如评论中所提到的 - 这似乎是与我们如何使用Retrofit相关的错误,请创建问题in our JIRA。您可以在其中指向此Retrofit issue。另外,请在H2O-3 gitter频道上发布JIRA链接。