【发布时间】:2017-06-20 22:44:47
【问题描述】:
我有一个包含多条记录的 DataFrame,
我想迭代此 DataFrame 的每一行以验证其每一列的数据,执行类似于以下代码的操作:
val validDF = dfNextRows.map {
x => ValidateRow(x)
}
def ValidateRow(row: Row) : Boolean = {
val nC = row.getString(0)
val si = row.getString(1)
val iD = row.getString(2)
val iH = row.getString(3)
val sF = row.getString(4)
// Stuff to validate the data field of each row
validateNC(nC)
validateSI(SI)
validateID(ID)
validateIF(IF)
validateSF(SF)
true
}
但是,做一些测试,如果我想打印 val nCtrong> 的值(以确保我将正确的信息发送到每个函数),它不会带给我任何东西:
def ValidateRow(row: Row) : Boolean = {
val nC = row.getString(0)
val si = row.getString(1)
val iD = row.getString(2)
val iH = row.getString(3)
val sF = row.getString(4)
println(nC)
validateNC(nC)
validateSI(SI)
validateID(ID)
validateIF(IF)
validateSF(SF)
true
}
我怎么知道我正在向每个函数发送正确的信息(我正在正确读取行的每一列的数据)?
问候。
【问题讨论】:
标签: scala apache-spark