2016-05-23 14 views
0

私は、次のデータフレームを持っていると私はそれにスパークミリリットルを使用してロジスティック回帰分析を実行する必要があります。apache sparkのデータフレームでの列選択のハードコーディングを回避する方法| Scalaの

uid a b c label d 
1 0 1 3 0  2 
2 3 0 0 1  0 

ミリリットルパッケージを使用している間、私はフォーマットでデータを作成する必要があることを知っているようになりました

label feature 
0  [0,1,3,2] 
1  [3,0,0,0] 

は、今私は、機能列を作成するためにVectorAssembler渡って来て、そうしながら、私のような何かをする必要があり

val assembler = new VectorAssembler() 
.setInputCols(Array("a", "b", "c", "d")) 
.setOutputCol("features") 

とにかく私は個々のフィーチャー列名のハードコーディングを避けることができますか

+1

'df .columns.diff(Seq( "uid"、 "label")) '? – zero323

答えて

0

あなたのデータによって異なります。あなたのフィーチャベクター(UIDとラベル)の一部ではない列のセットを常に持ち、他のすべての列があると仮定できる場合は、次のようにすることができます:

関連する問題