Как выполнить chi2 (khi2) на 2 столбцах кадра данных

Я на Spark версии 2.1.1 Мне нужно выполнить chi2 на 2 столбцах (col1 и col2) моего df. Я пытался импортировать ChiSquareTest, но я получаю сообщение об ошибке...

scala> import org.apache.spark.ml.stat.ChiSquareTest
<console>:23: error: object ChiSquareTest is not a member of package org.apache.spark.ml.stat
       import org.apache.spark.ml.stat.ChiSquareTest

кто нибудь знает как это сделать? Была ли предыдущая версия ChiSquareTest?

Спасибо

1 ответ

Ошибка возникает из-за неправильной упаковки. Вы должны импортировать это так:

import org.apache.spark.ml.feature.ChiSqSelector

Тогда используйте это как любой PipelineStage, например:

new ChiSqSelector().
  setNumTopFeatures(nFeatures).
  setFeaturesCol(FEATURES).
  setLabelCol(LABEL).
  setOutputCol(OUTPUT)

редактировать

Если вы хотите получить дополнительную статистику по критерию хи-квадрат, вы можете использовать:

import org.apache.spark.mllib.stat.Statistics

а потом

val testResults = Statistics.chiSqTest(vec)
Другие вопросы по тегам