pythonで競馬のデータをスクレイピング【AIで競馬予測】
以前に、上記の記事でnetkeiba.com様から過去のレースデータをスクレイピングしました。
そのデータをそのまま使うことはできません。僕も1ヶ月後に再びやろうとして忘れていたので、備忘録として処理の方法を書いておきます。
文字化け
僕は各騎手のページからデータを取得しました。すると、レース名などが文字化けしていました。
その場合は、メモ帳などで開いて保存すると文字化けが解消されます。
レースデータ以外の行
騎手のページからデータを取得すると、20行に1行だけ名称が取得されます。1つ1つ消すこともできるのですが、時間がかかります。
まとめて消すには、タブのなかにあるデータから、重複を削除を選択。これで何万とデータを取得した場合でも、1回で削除することができます。
空白がある行
海外レースや除外になったレースは、空白の特徴量ができてしまいます。そのままだと学習時にエラーになってしまいます。
pandasのdropna()を利用すると、一気に対象の行を削除できます。
import pandas as pd # CSVの読み込み df = pd.read_csv('ファイル') dfd = df.dropna(how='any') # CSVとして出力 dfd.to_csv('ファイル')
文字の置き換え
列を選択して、Ctrl+h で文字の置換えができる。
空白を作ってdropna()との併用もできる。