2016-09-09 2 views
2

Я пытаюсь отправить pandas dataframe to_json, и у меня возникли проблемы с датой. Я получаю addtional \, так что мои записи выглядят как Updated:09\/06\/2016 03:09:44. Возможно ли, чтобы этот дополнительный \ добавил? Я предполагаю, что это какой-то побег, но я не смог найти никакой дополнительной информации об этом.Есть ли способ предотвратить добавление pandas to_json ?

Я регулировки различных параметров, но нету везло df[0:10].to_json('splunkJsonFormat.txt', orient='records', date_format='ISO8601')

Образец данных:

b_Updated, 
Updated:09/06/2016 03:09:44, 
Updated:06/29/2016 08:16:52, 
Updated:09/07/2016 07:54:37, 

ответ

3

Выходной JSON вы получили действительно правильно и является правильным поведением.

Разрешение \/ помогает при встраивании JSON в тег <script>, который не позволяет </ внутри строк. Следовательно, в JSON / и \/ эквивалентны.

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

df['b_Updated'] = df['b_Updated'].str.split(':', 1)  \ 
           .apply(lambda x: x[0] + ':' + str(pd.to_datetime(x[1]))) 

df.to_json(orient='records', date_format='iso') 

[{"b_Updated":"Updated:2016-09-06 03:09:44"}, 
{"b_Updated":"Updated:2016-06-29 08:16:52"}, 
{"b_Updated":"Updated:2016-09-07 07:54:37"}] 
Смежные вопросы