Size: a a a

2021 October 01

AZ

Anton Zadorozhniy in Data Engineers
Лисп возьмите уже и не мучайтесь
источник

AE

Alexey Evdokimov in Data Engineers
чё-то я ума не приложу, каким магическим образом лисп решает проблему появления схемы из ниоткуда. тупой, наверное.
источник

AZ

Anton Zadorozhniy in Data Engineers
Вы можете делать валидацию в любой момент: на стадии разработки против статического словаря, на этапе деплоя, в рантайме; через destructuring у вас могут быть ослабленные правила которые касаются только какого-то конкретного поля или элемента коллекции
Возможности безграничны)
источник

d

d.sky in Data Engineers
а есть реализация на лиспе? интересно)
источник

AZ

Anton Zadorozhniy in Data Engineers
Реализация чего?
источник

d

d.sky in Data Engineers
на Лиспе
источник

AZ

Anton Zadorozhniy in Data Engineers
Я понял что на лиспе, реализацию чего вы спрашиваете?
источник

NN

No Name in Data Engineers
Лиспа
источник

AZ

Anton Zadorozhniy in Data Engineers
Конечно, любой лисп написан на лиспе
источник

NN

No Name in Data Engineers
Вот и разобрались
источник

d

d.sky in Data Engineers
.
источник

D

Dmitry in Data Engineers
Привет! Ещё вопрос по scala: как кастонуть все столбцы датафрейма типа date, например в стринг, оставив остальные типы столбцов без изменения. Сложность в том, что я хочу автоматизировать весь процесс и мне не подходит вариант с тем чтобы выполнять withColumn для каждого столбца, обращаясь к нему по имени. Я пробую так:

val new_df = df.select(df.columns.map(c=>col(c).cast(StringType):_*)

Это работает, но изменяет типы всех столбцов.

Не понимаю как кастовать не все поля, а только с типом даты и при этом оставить все остальные поля без изменения типа?

Подскажите приём пожалуйста.
источник

ИК

Иван Калининский... in Data Engineers
бери схему, а не просто колонки: df.schema.fields.map{field => if (field.dataType == DateType) col(field.name).cast(StringType) else col(field.name) }
источник

ЕГ

Евгений Глотов... in Data Engineers
Что значит не подходит
источник

ЕГ

Евгений Глотов... in Data Engineers
Выбираешь всё столбцы с нужным типом и кастуешь
источник

D

Dmitry in Data Engineers
Сложность у меня в том, что остальные столбцы как сохранить в датафрейме.
источник

ЕГ

Евгений Глотов... in Data Engineers
Ещё бы вот можно было вместо "df" изнутри селекта использовать функцию, возвращающую схему)
источник

D

Dmitry in Data Engineers
Сейчас попробую, спасибо!
источник

ИК

Иван Калининский... in Data Engineers
да, неплохо. Имплисит можно такой написать
источник

ЕГ

Евгений Глотов... in Data Engineers
А можно вот как-нибудь в spark.sql.functions😆
источник