我有一个数据框特征DF,如下所示:
我需要从中生成一个子集欺诈DF,如下所示(不起作用):
val fraudDF = featureDF
.filter($"is_fraud" === 1)
.withColumnRenamed("is_fraud", "label")
.select("features", "label")
我在下面得到了新的数据框:
我希望使用以下列:功能和标签
我应该如何解决?
非常感谢您。
更新: 我在此处发布此消息的原因是因为我创建了另一个要在此处应用的函数:
def createBalancedDataframe(df:DataFrame, reductionCount:Int)(implicit sparkSession:SparkSession) = {
val kMeans = new KMeans().setK(reductionCount).setMaxIter(30)
val kMeansModel = kMeans.fit(df)
import sparkSession.implicits._
kMeansModel.clusterCenters.toList.map(v => (v, 0)).toDF("features", "label")
}
正在运行
val balancedNonFraudDF = createBalancedDataframe(nonFraudDF, fraudCount.toInt)(spark)
会抛出错误信息
字段“功能”不存在。