可以說我有一個返回數據的函數'getData()'(把它看作是一個數據流)。現在我需要用這些數據組成一個h2o數據框。我需要將它們作爲新行插入,前提是它不存在於數據框中。維護一個h2o數據幀的有效方法
一個明顯的方法就是做:
- 有一個全球性的H2O數據幀
- 創建一個從到達的數據(1行)一H2O數據幀。 (我用as.h2o())
- 檢查,如果它(使用h2o.which()或任何其他功能)
- 如果它不存在,然後將其添加到數據在全球數據幀已經存在幀(使用h2o.rbind())
上述解決方案太慢。每次數據到達時(第2步)創建h2o數據幀花費的時間太多。 (僅在小數據集上測試)
我也在考慮將它們存儲在R數據框中,然後在某些間隔後使用h2o.rbind()。
什麼是最好的(時間是優先)的方式來做到這一點?
這篇文章需要一個代碼示例和一些基準。你如何創建H2O框架?創建一個框架不應該花費太多時間 - 步驟2是這裏真正的瓶頸。我懷疑添加另一個創建R data.frame的步驟會降低速度,但這就是爲什麼代碼和基準是真正解決問題的唯一方法。 –
@ErinLeDell我編輯了這個問題。在小數據集(大約增加500行)中,創建h2o數據框似乎需要比搜索和綁定更多的時間。 –
好的,謝謝,現在它更有意義。什麼'getData()'返回一個R行中的1行數據框? –