2015-11-23 86 views
0

我知道h2o的內部數據模型是面向列的(即H2OFrame是H2OVec的集合)。但是,我想要使用的庫需要遍歷H2OFrame的行。h2o:遍歷行

有沒有乾淨的方式來獲得對行的迭代器還是需要求助於索引像

iris = h2o.import_file(path=".../iris_wheader.csv") 
for i in xrange(iris.nrow): 
    foo(iris[i,:].as_data_frame(use_pandas=False)[1]) 

我知道這將是緩慢的,我使用h2o.h2o.export_file可能的情況下。

回答

1

您可以按行進行應用。 iris.apply(foo,1)

哪裏foo一些拉姆達是H2O理解(有什麼可以去那裏一定的侷限性,但所有基本的數學OPS應該能正常運行)。

0

除了什麼克里夫說(這是更快的方式),還可以拉動整個數據幀到Python的空間,然後在其上進行迭代。

pd_frame = h2o_frame.as_data_frame(use_pandas=True) 

如果你不想熊貓到底:

np_array = h2o_frame.as_data_frame(use_pandas=True).as_matrix() 

一點關於你的圖書館可能有助於回答這個問題更好。