Я тщетно пытаюсь использовать функцию подстроки Pyspark внутри UDF. Ниже приведен мой фрагмент кода -
from pyspark.sql.functions import substring
def my_udf(my_str):
try:
my_sub_str = substring(my_str,1, 2)
except Exception:
pass
else:
return (my_sub_str)
apply_my_udf = udf(my_udf)
df = input_data.withColumn("sub_str", apply_my_udf(input_data.col0))
Пример данных -
ABC1234
DEF2345
GHI3456
Но когда я печатаю df, я не получаю никакого значения в новом столбце "sub_str" как показано ниже -
[Row(col0='ABC1234', sub_str=None), Row(col0='DEF2345', sub_str=None), Row(col0='GHI3456', sub_str=None)]
Может кто-нибудь, пожалуйста, дайте мне знать, что я делаю неправильно?