2016-09-18 2 views
0

このWebページでMLの例(IndexToString)を試していました:http://spark.apache.org/docs/latest/ml-features.html#onehotencoder、jupyterノートブック(running Pyspark)を使って単純なdf(dataframe)を作成しました。ラインの一つは言った:Apache pyspark MLの例が動作しない

Py4JJavaError: An error occurred while calling o23.applySchemaToPythonRDD. : java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

助けてください、これは私がデータフレームを構築するために最初のRDDを持っている必要があります意味ですか?また、MLlibメソッドを試してみましたが、うまくいきました.MLメソッドでエラーを出し続けています。

答えて

0

使用しているスパークのバージョンはどれですか?あなたのリンクの例では、このリンクでは、スパーク2.0.0

を必要とし、あなたはスパーク1.6.2のための例を見つけることができます - 私のマシン上で動作して試験した私は、スパーク2.0を使用していた http://spark.apache.org/docs/1.6.2/ml-features.html#onehotencoder

from pyspark.ml.feature import OneHotEncoder, StringIndexer 

df = sqlContext.createDataFrame([ 
    (0, "a"), 
    (1, "b"), 
    (2, "c"), 
    (3, "a"), 
    (4, "a"), 
    (5, "c") 
], ["id", "category"]) 

stringIndexer = StringIndexer(inputCol="category", outputCol="categoryIndex") 
model = stringIndexer.fit(df) 
indexed = model.transform(df) 
encoder = OneHotEncoder(dropLast=False, inputCol="categoryIndex", outputCol="categoryVec") 
encoded = encoder.transform(indexed) 
encoded.select("id", "categoryVec").show() 
+0

.0 – jypucca

関連する問題