我已经阅读了 H2O.ai 的 PythonBooklet.pdf 和 python API 文档,但仍然找不到一个干净的方法来做到这一点。我知道我可以执行以下任一操作:
flatMap
+ collect
或 collect
+ 列表理解。get_frame_data
,它给我一串由\n
分隔的标题和数据;然后将其转换为列表(在我的例子中是数字列表)。有更好的方法吗?谢谢你。
您可以尝试这样的操作:通过调用 .as_data_frame() 将 H2OFrame 作为 pandas 数据帧引入 python,然后在感兴趣的列上调用 .tolist()。
带虹膜的独立示例
import h2o
h2o.init()
df = h2o.import_file("iris_wheader.csv")
pd = df.as_data_frame()
pd['sepal_len'].tolist()
您可以 (1) 将 H2o 帧转换为 pandas 数据帧并 (2) 将 pandas 数据帧转换为以下列表:
pd=h2o.as_list(h2oFrame)
l=pd["column"].tolist()
H2O as_list 方法返回列表列表以及列名称,因此您需要在提取列后压平列表,如下所示
column_as_list_of_lists = h2o.as_list(h2oFrame[:,'<col_name>'],use_pandas=False)
flat_list = [item for sublist in column_as_list_of_lists[1:len(column_as_list_of_lists)-1] for item in sublist]