如何访问 Pandas' DataReader 中的日期行?

How to access date row in Pandas' DataReader?

我正在使用 Python 的 Pandas 从 Yahoo Finance 获取一些财务数据,这是 pandas_datareader 的内置功能。我希望访问它打印出来的日期,但它似乎不在列中,也不在我需要的 json 中,但是当我打印出对象时它就在那里:

from pandas_datareader.data import DataReader
import datetime

start = datetime.datetime(2015, 6, 1)
goog = DataReader('GOOGL', 'yahoo', start)
goog.to_json(None, orient="records") # this doesn't include dates!
print(goog) # this prints out the dates along with the other data!
print(goog.columns) # prints every column except the date column

如何将日期与其他数据一起包含在 json 字符串中?

list(goog.index) 以时间戳列表的形式提供日期。

为了获取 json 中的日期,我快速浏览了 docs。试试这个:

print goog.to_json(orient="index", date_format='iso') 

Pandas 数据帧有一个用于分组和快速查找的索引。索引不被视为列之一。要将日期从索引移动到列,您可以使用 reset_index(),这将使 Date 成为一列,并使索引只是一个从 0 开始向上计数的数字序列。

因此要导出为 JSON 并包含日期:

goog.reset_index().to_json(None, orient='records', date_format='iso')