我正在尝试将Vector数据类型提供给Spark中名为public void cadastrarUsuario (View view) {
if (validacao())
Toast.makeText(CadastroActivity.this, "Preencha o campo " + validar, Toast.LENGTH_SHORT).show();
}
public boolean validacao() {
String txtNome = campoNome.getText().toString();
String txtSenha = campoSenha.getText().toString();
String txtEmail = campoEmail.getText().toString();
validar = txtNome.isEmpty() ? "Nome" :
txtEmail.isEmpty() ? "Email" :
txtSenha.isEmpty() ? "Senha" :
"OK";
Boolean check = true;
if(validar.equals("OK")) check = false;
return check;
}
的{{1}}函数。当mllib
返回包含所需Vector的“result”列的Word2Vec
时,需要一些代码。最后,当代码在Spark中成功运行时,我尝试使用Word2Vec
到DataFrame
一些代码行。 Spark在此步骤崩溃,并出现以下错误:.foreach
。如果删除println
命令,代码将正常运行。我尝试使用RDD的示例方法,但出现了相同的Spark错误。不知何故,RDD变得难以理解。
要了解此ML任务的背景,请参阅此link。
NullPointerException
答案 0 :(得分:1)
很可能,您的一个输入具有空字段。 Spark懒惰地评估,所以在你运行take(3)
之前,你实际上没有进行任何计算,这就是为什么没有那条线就没有错误的原因。
此外,将RDD
转换为DataFrame
然后应用转换器会更典型(也可能更快)。