小能豆

get_nasdaq_symbols() 的类型错误

python

from pandas_datareader.nasdaq_trader import get_nasdaq_symbols    
traded_symbols = get_nasdaq_symbols()

它给出“TypeError:read_csv()需要1个位置参数,但给出了2个位置参数(和3个仅关键字参数)”:

65 # For pandas >= 0.20.0, the Python parser issues a warning if
     66 # both a converter and dtype are specified for the same column.
     67 # However, this measure is probably temporary until the read_csv
     68 # behavior is better formalized.
     69 with warnings.catch_warnings(record=True):
---> 70     data = read_csv(
     71         StringIO("\n".join(lines[:-1])),
     72         "|",
     73         dtype=_TICKER_DTYPE,
     74         converters=converter_map,
...
     76     )
     78 # Properly cast enumerations
     79 for cat in _CATEGORICAL:

这是否与“pandas_datareader.nasdaq_trader”的版本有关,因为这非常简单?


阅读 58

收藏
2023-11-13

共1个答案

小能豆

您遇到的错误似乎与pandas_datareader库尝试使用意外参数读取数据有关read_csv。该问题可能与库的内部实现有关,并且可以通过升级或降级库来解决pandas_datareader

要解决此问题,您可以尝试以下步骤:

1. 升级pandas_datareader

确保您拥有最新版本的pandas_datareader. 您可以使用以下命令对其进行升级:

pip install --upgrade pandas-datareader

2.检查pandas版本:

确保您安装了兼容版本pandas。某些版本的pandas_datareader可能与某些版本的 存在兼容性问题pandas。您可以pandas使用以下方式升级:

pip install --upgrade pandas

3、检查nasdaq_trader模块:

确保您使用的模块与您安装的nasdaq_trader版本兼容。pandas_datareader您可能需要检查文档或发行说明pandas_datareader以获取任何特定于版本的信息。

4.降级pandas_datareader

如果升级不能解决问题,您可能需要尝试降级pandas_datareader到已知适合您当前环境的版本:

pip install pandas-datareader==<desired_version>

替换<desired_version>为您认为兼容的版本号。

5.替代方法:

pandas_datareader.nasdaq_trader考虑使用该库,而不是使用yfinance,它可以轻松访问雅虎财经数据,包括纳斯达克符号。您可以使用以下命令安装它:

pip install yfinance

以下是如何使用以下方法获取纳斯达克股票代码的示例yfinance

import yfinance as yf

nasdaq_symbols = yf.download('AAPL', start='2022-01-01', end='2023-01-01')  # Replace 'AAPL' with your desired symbol
print(nasdaq_symbols)

选择最适合您的要求和兼容性的方法。

2023-11-13