首页 > 解决方案 > 引发 H2OValueError (message=message, var_name=vname, skip_frames=1)

问题描述

我正在尝试设置列名,但遇到错误:

H2OValueError:参数names

代码:

index_columns_names =  ["Date"]
generator_output_columns_names = ["GenOut"]
generator_v_columns_names = ["GenVar"]
turb_bearing_vib_columns_names =["TurbBearingVib"+str(i) for i in range(1,6)]
gen_bearing_vib_columns_names = ["GenBearingVib"+str(i) for i in range(7,9)]
input_file_column_names = index_columns_names + generator_output_columns_names + generator_v_columns_names + turb_bearing_vib_columns_names + gen_bearing_vib_columns_names
data = h2o.upload_file("data\Data_SLA_Unit_1_2018.csv")
data.set_names(input_file_column_names);

如何解决这个问题?

标签: pythonh2onamesvalueerror

解决方案


根据您的命名约定,您是否期望 input_file_column_names 是 12 个字符串的列表?打印时,我们看到以下 10 个列名:

['Date',
 'GenOut',
 'GenVar',
 'TurbBearingVib1',
 'TurbBearingVib2',
 'TurbBearingVib3',
 'TurbBearingVib4',
 'TurbBearingVib5',
 'GenBearingVib7',
 'GenBearingVib8']

在 H2O-3 版本 3.22.1.3 中,data.set_names(input_file_column_names)对于具有 10 列的任何数据集都可以成功运行,但如果列数大于或小于字符串数,则会出现以下错误:

H2OValueError: 参数names(= ['Date', 'GenOut', 'GenVar']) 不满足条件 len(names) == self.ncol


推荐阅读