【问题标题】:how to convert pandas data from to json with timdeltaindex?如何使用 timdeltaindex 将 pandas 数据转换为 json?
【发布时间】:2018-06-07 16:57:51
【问题描述】:

假设我有以下示例:

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 天。如果我在 python 中打印 df,这就是我看到的:

df
Out[13]: 
            0
250 days  0.0

In [14]: 

有没有办法实现这一点,即我可以重建数据框以获得正确的索引。

【问题讨论】:

    标签: pandas timedelta


    【解决方案1】:

    您可以在数据框中添加类似 ['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]]}'
    

    【讨论】:

      猜你喜欢
      • 2020-10-31
      • 2019-05-14
      • 2019-07-01
      • 2021-12-13
      • 2023-03-31
      • 2020-11-12
      • 2018-10-27
      • 2020-02-13
      相关资源
      最近更新 更多