Как отфильтровать фрейм данных Spark на основе метки даты файла - PullRequest
0 голосов
/ 27 декабря 2018

Может кто-нибудь сообщить мне, как фильтровать метку даты в файле

У меня есть следующие файлы в соответствующих папках в озере данных Azure:

adl://carlslake.azuredatalakestore.net/folderOne/filenr1_1166_2018-12-20%2006-05-52.csv

adl://carlslake.azuredatalakestore.net/folderTwo/filenr2_1168_2018-12-22%2006-07-31.csv

Я написал следующий скрипт, которыйбудет читать все файлы .csv в обеих папках, но я хочу только читать файлы .csv в соответствующих папках на основе текущей даты.

test1 = spark.read.csv("adl://carlslake.azuredatalakestore.net/folderOne/",inferSchema=True,header=True)
test2 = spark.read.csv("adl://carlslake.azuredatalakestore.net/folderTwo/",inferSchema=True,header=True)

Может кто-нибудь дать мне знать, как настроить вышеуказанные файлы для чтенияв папках на основе текущей даты, например, два файла .csv: 2018-12-20 и 2018-12-22

Я думал, что это могло быть написано что-то вроде

test1 = spark.read.csv("adl://carlslake.azuredatalakestore.net/folderOne/", select(current_date)inferSchema=True,header=True)

Ноэто не сработало

Ответы [ 2 ]

0 голосов
/ 28 декабря 2018

Просто перейдите с

test1 = spark.read.csv("adl://carlslake.azuredatalakestore.net/testfolder/RAW/*{today}.csv"

Другой шаблон *_{today}*.csv не соответствует вашему файлу, приведенному выше filenr1_1166_2018-12-20%2006-05-52.csv

0 голосов
/ 27 декабря 2018

Попробуйте что-то вроде

from datetime import datetime

today = datetime.today().date()
test1 = spark.read.csv(f"adl://carlslake.azuredatalakestore.net/
                       folderOne/*_{today}*.csv")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...