Heim >Backend-Entwicklung >Python-Tutorial >Wie behebe ich den Fehler „TypeError: String-Indizes müssen Ganzzahlen sein' beim Zugriff auf Yahoo Finance-Daten mit Pandas Datareader?
TypeError beim Zugriff auf Yahoo Finance-Daten mit Pandas Datareader
Beim Abrufen von Bestandsdaten von Yahoo Finance mit Pandas Datareader können Benutzer auf einen „TypeError“ stoßen : String-Indizes müssen Ganzzahlen sein“ Fehler. Dieses Problem kann auftreten, wenn der Parameter „symbols“ eine Liste von Zeichenfolgen erwartet, stattdessen aber auf eine Zeichenfolge stößt.
Um diesen Fehler zu beheben, stellen Sie sicher, dass der Parameter „symbols“ eine Liste von Aktienkennungen ist. Hier ist ein Beispiel für einen funktionierenden Code:
<code class="python">import pandas_datareader end = "2022-12-15" start = "2022-12-15" stock_list = ["TATAELXSI.NS"] data = pandas_datareader.get_data_yahoo(symbols=stock_list, start=start, end=end) print(data)</code>
Zusätzlich hat ein GitHub-Benutzer namens raphi6 eine Pull-Anfrage mit einer Lösung für dieses Problem bereitgestellt. Um diesen Fix zu installieren, befolgen Sie diese Schritte:
Installieren Sie die folgenden Abhängigkeiten:
conda install pycryptodome pycryptodomex
Deinstallieren Sie die aktuelle Version von Pandas Datareader:
conda uninstall pandas-datareader
Installieren Sie die Pull-Request-Version von Pandas Datareader:
pip install git+https://github.com/raphi6/pandas-datareader.git@ea66d6b981554f9d0262038aef2106dda7138316
Alternativ hat ein Benutzer namens Nikhil Mulley eine Problemumgehung vorgeschlagen die Funktion pdr_override(). Diese Funktion kann wie folgt verwendet werden:
<code class="python">import pandas_datareader as pdr import pandas as pd end = "2022-12-15" start = "2022-12-15" stock_list = ["TATAELXSI.NS"] stock_symbol = stock_list[0] stock_obj = pdr.DataReader(stock_symbol, 'yahoo', start, end) stock_data = pd.DataFrame({stock_symbol: stock_obj['Close']}) </code>
Das obige ist der detaillierte Inhalt vonWie behebe ich den Fehler „TypeError: String-Indizes müssen Ganzzahlen sein' beim Zugriff auf Yahoo Finance-Daten mit Pandas Datareader?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!