質問

いくつかの数値列で構成されるPANDASデータフレームから派生したSQLContextデータフレームがあります。演奏したい 多変量統計分析 を使用して pyspark.mllib.stats パッケージ。統計関数は、ベクトルのRDDを期待しています。このデータフレームをベクターのRDDに変換することはできませんでした。データフレームを変換する方法はありますか?

コード:

 rdd = sqlCtx.createDataFrame(df_new)
 summary = Statistics.colStats(rdd)

DF_NEWを取得しています

 df_new = df.applymap(lambda s: dic.get(s) if s in dic else s) #df is a pandas dataframe

概要行でPY4JJAVAエラーが発生しています。問題は、RDDの形式です。

役に立ちましたか?

解決

DataFrame Python APIは、以下を呼び出すことにより、データフレームのRDDを公開します。

df.rdd # you can save it, perform transformations of course, etc. 

df.rddは、コンテンツをrowのpyspark.rddとして返します。

その後、すべての行を次の行に変換する行のRDDにマッピングできます numpy ベクター。あなたのベクトルが与えられた情報で何を表しているのかわからないので、私は変換についてこれ以上具体的にすることはできません。

注1: df変数はデータフレームを定義しています。

注2:この関数はSpark 1.3以降利用可能です

ライセンス: CC-BY-SA帰属
所属していません datascience.stackexchange
scroll top