Python Быстрый вопрос о записи фрейма данных в соответствии с соглашениями об именовании csv - PullRequest
2 голосов
/ 17 июня 2020

Мне нужно читать таблицу каждые 30 минут, и я сделал запрос, который принимает только строки обновлений.

dfsql = client.query(sql, project=project_id).to_dataframe()

У меня уже была таблица, когда я впервые создал фрейм данных с помощью этого

dfsql.to_csv('/home/analytics/divyang/divyangtest.csv')

Теперь я хочу записать обновленные записи в новую таблицу (не в divyangtest.csv), поэтому каждый раз, когда мой запрос запускается, у меня должна быть новая таблица, например divyangtest1, divyangtest2 et c

1 Ответ

2 голосов
/ 17 июня 2020

Вы можете попробовать добавить к нему время, чтобы гарантировать уникальное имя и упростить понимание, когда файл был создан.

Сделайте имя файла примерно таким:

filename = f"divyangtest-{datetime.datetime.now()}.csv"

Я просто запустил его, и он получил следующее:

'divyangtest-2020-06-17 13:14:37.114370.csv'

Вы можете привести его в порядок, чтобы сделать файл таким, каким вам нравится.

Вот (грязный) пример, делает его аккуратным:

filename = f"divyangtest_{str(datetime.datetime.now()).split('.')[0].replace(' ', '_')}.csv"

Это делает имя файла таким:

'divyangtest_2020-06-17_13:17:25.csv'

Дайте мне знать, если у вас есть еще вопросы в комментариях.

Пишем файл

Попробуйте так:

filename = f"divyangtest_{str(datetime.datetime.now()).split('.')[0].replace(' ', '_')}.csv"
dfsql.to_csv(filename)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...