我正在尝试在几个股票符号之间进行简单的关联。我以前也运行过同样的代码,它很有效。现在,它返回一个异常,该异常引用了一堆文件,并包含我不理解的其他消息。此外,该命令必须在控制台中手动停止。我对python和编程很陌生。我使用的是Spyder 5.0.3和anaconda3。我已经尝试重新安装Spyder并更新了使用的软件包,但都没有解决问题。
问题似乎出在融资方案上。当我试图下载单个股票行情的价格数据时,返回了类似的异常。它看起来不是pandas或numpy,因为我能够制作一个小数据帧并运行corrcoeff((而没有任何问题。值得一提的是,这是我使用的代码:
import pandas as pd
import numpy as np
d = {'col1': [1, 2], 'col2': [3, 4]}
df = pd.DataFrame(data=d)
r = np.corrcoef(df)
以下是过去可以工作但不再工作的代码:
import pandas as pd
import numpy as np
import yfinance as yf
AAPL = yf.download('AAPL', period='32D', interval='1D')
MSFT = yf.download('MSFT', period='32D', interval='1D')
NVDA = yf.download('NVDA', period='32D', interval='1D')
corr3 = pd.DataFrame([AAPL['Close'],
MSFT['Close'],
NVDA['Close']])
r = np.corrcoef(corr3)
当我运行文件时,我在控制台中收到以下异常:
Exception in thread Thread-10:
Traceback (most recent call last):
File "C:Usersjdejoanaconda3libthreading.py", line 932, in _bootstrap_inner
self.run()
File "C:Usersjdejoanaconda3libthreading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "C:Usersjdejoanaconda3libsite-packagesmultitasking__init__.py", line 102, in _run_via_pool
return callee(*args, **kwargs)
File "C:Usersjdejoanaconda3libsite-packagesyfinancemulti.py", line 167, in _download_one_threaded
data = _download_one(ticker, start, end, auto_adjust, back_adjust,
File "C:Usersjdejoanaconda3libsite-packagesyfinancemulti.py", line 179, in _download_one
return Ticker(ticker).history(period=period, interval=interval,
File "C:Usersjdejoanaconda3libsite-packagesyfinancebase.py", line 157, in history
data = data.json()
File "C:Usersjdejoanaconda3libsite-packagesrequestsmodels.py", line 900, in json
return complexjson.loads(self.text, **kwargs)
File "C:Usersjdejoanaconda3libjson__init__.py", line 357, in loads
return _default_decoder.decode(s)
File "C:Usersjdejoanaconda3libjsondecoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:Usersjdejoanaconda3libjsondecoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
我想知道我的代码出了什么问题。它过去是有效的,现在不行了。如有任何指导,我们将不胜感激。
我已经解决了这个问题。我需要通过spyder中的控制台更新yfnance。我一直在使用命令提示符来更新软件包。