У меня есть такая строка кода:
Код: Выделить всё
df = df.withColumn("final_name", F.substring(F.col("name"), 1, F.length(F.col("name"))-15))
Когда я запускаю его, я получаю сообщение об ошибке. Столбец не повторяется (проблема связана с длиной). Однако когда я использую эквивалентный код с F.expr(), он работает. Почему?
Код: Выделить всё
df = df.withColumn("final_name", F.expr("substring(name, 1, length(name)-15)"))
Это больше для моего собственного понимания того, почему мой исходный код не работает. Спасибо за вашу помощь.
Подробнее здесь:
https://stackoverflow.com/questions/791 ... i-does-not