我有一个数据帧的数据与下面列使用WithColumn与外部功能
1)FILEFORMAT是以下所有列数据类型CSV 2)字符串
employeeid,pexpense,cexpense
现在我需要建立一个新的数据帧其中有一个名为expense
的新列,它是根据列pexpense
,cexpense
进行计算的。
棘手的部分是计算算法是不是我创建了一个UDF功能,但它是一个外部函数,需要从一个Java库,需要原始类型作为参数输入 - 在这种情况下pexpense
,cexpense
- 计算新列所需的值。
函数签名是从外部Java罐子
public class MyJava
{
public Double calculateExpense(Double pexpense, Double cexpense) {
// calculation
}
}
所以,我怎么可以调用外部函数来创建一个新的计算列。我可以在Spark应用程序中将该外部函数注册为UDF吗?
您可以编辑您的文章,并添加您的数据框(1)的模式(让大家看到列的*数据类型*)和(2)您正在讨论的方法的_signature_? –
@TzachZohar我已更新帖子 – shiv455
@TzachZohar我已更新帖子 – shiv455