ホームページ >バックエンド開発 >Python チュートリアル >Pandas Datareader を使用して Yahoo Finance データを取得するときに発生する「TypeError: string indices must be integers」エラーを解決する方法

Pandas Datareader を使用して Yahoo Finance データを取得するときに発生する「TypeError: string indices must be integers」エラーを解決する方法

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-21 15:40:03917ブラウズ

How to Resolve

Pandas Datareader を使用して Yahoo Finance データを取得すると「TypeError: string indices must be integers」エラーが発生する

Pandas Datareader を使用して株式を取得する場合Yahoo Finance からのデータを使用すると、「文字列インデックスは整数である必要があります」というエラーが発生する場合があります。これは、整数ではなく文字列インデックスを使用して株式データにアクセスしようとすると発生します。

解決策

get_data_yahoo のシンボル パラメータが文字列のリストとして渡されていることを確認してください。単一の文字列ではなく。たとえば、symbols="TATAELXSI.NS" の代わりに、symbols=["TATAELXSI.NS"] を使用します。

pdr_override() メソッドを使用した代替修正

An代替の回避策には、pdr_override 関数を使用して株式シンボルを文字列として指定することが含まれます。

<code class="python">import pandas_datareader.data as pdr

symbols = ["TATAELXSI.NS"]

with pdr.pdr_override():
    data = pdr.get_data_yahoo(symbols=symbols, start=start, end=end)</code>

このメソッドでは、文字列を整数として扱うように関数に指示することで、文字列をシンボル引数として使用できます。

追加メモ

  • 互換性の問題を避けるために、Pandas Datareader が最新であることを確認してください。
  • シンボル パラメーターに有効な在庫が含まれていることを確認してください記号。
  • Yahoo Finance API が一時的に利用できなくなっていないか確認してください。

以上がPandas Datareader を使用して Yahoo Finance データを取得するときに発生する「TypeError: string indices must be integers」エラーを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。