繁体   English   中英

使用 Spark UDF 从 spark dataframe 中选择 integer / 带符号浮点值的小数部分

[英]Using Spark UDF to pick integer / decimal part of signed float value from spark dataframe

我的目标是用以下模式转换火花 DF

--- value (float)

对于具有两列的 DF,每列存储 integer 部分和浮点值的小数部分 这是我的方法

def transform(df):
        split_udf1 = udf(lambda x: self.split_numbers(x)[0], IntegerType())
        split_udf2 = udf(lambda x: self.split_numbers(x)[1], IntegerType())
        return df.select(split_udf1(df['value']).alias('value1'),split_udf2(df['value']).alias('value'))

def split_numbers(num):
    num = str(num)
    return [int(i) for i in num.split(".")]

但是我在转换后的 DF 中没有得到任何值。 可能的原因有哪些?

调试后我发现发生了什么。 代码工作正常。 然而,在返回结果 DF 后,我正在创建一个视图以供稍后查询。

但是我开始查询视图的阶段超出了我的 spark 上下文

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM