Как преобразовать данные панд из в JSON с Timdeltaindex? - PullRequest
0 голосов
/ 07 июня 2018

Предположим, у меня есть следующий пример:

import pandas as pd

In [11]: df = pd.DataFrame(data=[0.0], index=pd.TimedeltaIndex([250], unit='d'))

In [12]: df.to_json(orient='split', date_format='iso')
Out[12]: '{"columns":[0],"index":["1970-09-08T00:00:00.000Z"],"data":[[0.0]]}'

In [13]: 

Как видите, я хочу преобразовать фрейм данных pandas в формат json.К сожалению, я не могу найти способ, как преобразовать индекс и получить желаемый результат.В этом случае индекс должен составлять 250 дней.Вот что я вижу, если я печатаю df на python:

df
Out[13]: 
            0
250 days  0.0

In [14]: 

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

1 Ответ

0 голосов
/ 07 июня 2018

Вы можете добавить столбец типа ['days'] к фрейму данных:

df['days'] = df.index.days

, и тогда у df.to_json () просто будет ключ с именем "days" с количеством дней.

В качестве альтернативы, если вы хотите, чтобы индекс сказал «250 дней», просто введите str:

df.index = df.index.astype(str)

И результат df.to_json(orient='split', date_format='iso') будет:

'{"columns":[0,"days"],"index":["250 days"],"data":[[0.0,250]]}'
...