Python 尝试从 yfinance Ticker 对象获取日期时出错

Python error when trying to get Date from yfinance Ticker object

我正在尝试为某些股票制作日线图,但 运行 遇到了问题。每 2 分钟获取 'Close' 价格功能正常,但是当我尝试获取 'Datetime' 时出现错误。我相信 yfinance 使用 pandas 创建数据框,但我可能错了。无论如何,我在从 yfinance 中提取某个专栏时遇到问题。

我对 python 和许多软件包还很陌生,所以这可能是一个简单的错误,但我的代码如下所示。

stock = yf.Ticker('MSFT')
print(stock.history(period='1d', interval='2m'))
priceArray = stock.history(period='1d',interval='2m')['Close']
dateArray = stock.history(period='1d',interval='2m')['Datetime']
        

我得到的错误是:

File "C:\Users\TrevorSmith\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\pandas\core\frame.py", line 3024, in __getitem__ indexer = self.columns.get_loc(key)
  
File "C:\Users\TrevorSmith\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\pandas\core\indexes\base.py", line 3082, in get_loc raise KeyError(key) from err

KeyError: 'Date'

当我打印 stock.history(period='1d',interval='2m) 它显示以下列名称:

Open        High         Low       Close  Volume  Dividends  Stock Splits  Datetime

同样,从该信息中获取 ['Close'] 是可行的,但是 ['Date']、['Datetime']、['DateTime'] 和 ['Time'] 不起作用。

我是不是做错了什么?或者有其他方法可以获取我正在寻找的信息吗?

日期时间没有列名,它看起来像一个:

试试看 print(stock.history(period='1d',interval='2m).keys()) 你会看到。

日期时间列是数据框的索引。如果您重置索引,您可以对 ['Datetime'] 列执行任何操作。