如何访问 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')
我正在使用 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')