2017-04-22 23 views
1

在我的項目中,我將使用h2o的機器學習算法。雖然我沒有加載火車日期。 我使用以下方式。在h2o.ai中,如何在java或scala中加載列車數據?

var f = FileUtils.getFile("D:\\from_2017_2_13\\untitled2\\src\\main\\resources\\extdata\\iris_wheader.csv") 
println(11111) 
var frame = FrameUtils.parseFrame(Key.make("iris_weather.hex"),f) 
println(22222) 

的11111是輸出,則該程序將是乳寧,並沒有停止

11111 

其他方式

var f = FileUtils.getFile("D:\\from_2017_2_13\\untitled2\\src\\main\\resources\\extdata\\iris_wheader.csv") 
val parserSetup = H2OFrame.defaultParserSetup() 
    parserSetup.setSeparator(',').setCheckHeader(ParseSetup.HAS_HEADER).setNumberColumns(5) 
val f3 = new H2OFrame(parserSetup, f) 
    f3 

錯誤

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 65535 
at water.DKV.get(DKV.java:202) 
at water.DKV.get(DKV.java:175) 
at water.parser.ParseSetup.createHexName(ParseSetup.java:594) 
at water.fvec.H2OFrame.<init>(H2OFrame.scala:56) 
at water.fvec.H2OFrame.<init>(H2OFrame.scala:84) 

回答

0

要加載數據進入斯卡拉作爲水框你可以做t他以下幾點:

import org.apache.spark.h2o._ 
import water.support.SparkContextSupport.addFiles 
import org.apache.spark.SparkFiles 
import java.io.File 

val hc = H2OContext.getOrCreate(sc) 

addFiles(sc, "/Users/avkashchauhan/smalldata/iris/iris.csv") 
val irisData = new H2OFrame(new File(SparkFiles.get("iris.csv"))) 

一旦數據被加載,你可以看到如下數據幀:

scala> irisData 
res1: water.fvec.H2OFrame = 
    Frame key: iris.hex 
    cols: 5 
    rows: 150 
chunks: 1 
    size: 2454 

一旦你嚥下你可以用它建立模型的數據幀。如果你正在尋找一個在Scala中使用H2O庫的例子,你可以找這個博客full end to end Scala based deep learning sample in H2O