AWS Glue - Как исключить строки, где строка не соответствует формату даты - PullRequest
0 голосов
/ 23 мая 2019

У меня есть набор данных со столбцом даты создания. этот столбец обычно имеет формат «дд / мм / гг», но иногда он содержит мусорный текст. Я хочу в конечном итоге преобразовать столбец в DATE и получить текст мусора в виде значения NULL.

Я пытался использовать resolChoice, но это приводит ко всем нулевым значениям.

data_res = date_dyf.resolveChoice (specs = [( 'Datescanned', 'отливать: временную метку')])

Пример данных

3,1/1/18,text7  
93,this is a test,text8  
9,this is a test,text9  
82,12/12/17,text10

1 Ответ

0 голосов
/ 25 мая 2019

Попробуйте преобразовать DynamicFrame в DataFrame Spark и проанализировать дату, используя функцию to_date :

from pyspark.sql.functions import to_date

df = date_dyf.toDF
parsedDateDf = df.withColumn("datescanned", to_date(df["datescanned"], "dd/MM/yy"))
dyf = DynamicFrame.fromDF(parsedDateDf, glueContext, "convertedDyf")

Если строка не соответствует формату, будет установлено null значение

...