簡體   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