前提・実現したいこと
netkeibaの出馬表には、出走馬の過去5走成績が掲載されています。
この出走表から必要な要素だけを抽出したいのですが、成績欄に記載されている内容をうまく抽出できません。
発生している問題・エラーメッセージ
IndexError: list index out of range
該当のソースコード
import pandas as pd url = 'https://race.netkeiba.com/race/shutuba_past.html?race_id=202005020711&rf=shutuba_submenu' kosc = pd.read_html(url)[0] kosc.drop(['枠', '印'], axis = 1, inplace = True) kosc['前走'].map(lambda x: x.split()) 出馬表を取ってきて、不要な2つのカラムは削除できました。 前走のカラムに様々な情報が詰め込まれているので、それぞれを取り出して整理したいと思い、 なんとなくmapとsplitを組み合わせてみたらバラバラにできましたが、 そこから(例えばレースの距離を)抽出して別のカラムとして加えることができません
試したこと
kosc['前走'].map(lambda x: x.split()[Y])
Y=0でレース日、Y=1で場所、Y=2で着順を抽出できますが、
Y=4以上はIndexError: list index out of rangeが出ます。
後ろから取ってこようとY=-1, -2, -3と入力していっても、Y=-4で同じエラーが出ます。
kosc['前走'].map(lambda x: x.split())[Y]
この場合だと、前走のY行目だけ取ってきてしまいます。
前走カラムから距離、レース名等だけを抜き出し、別のカラムを加えるコードを教えてください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/18 23:44
退会済みユーザー
2020/05/19 10:48