ホーム › PC-KEIBA フォーラム › PC-KEIBAに関するご質問・ご意見フォーラム › Pythonデータ登録で予測値が登録できない
- このトピックには11件の返信、2人の参加者があり、最後に管理人@PC-KEIBAにより6ヶ月、 3週前に更新されました。
-
投稿者投稿
-
2024/05/05 10:45 #15057soralily参加者
コンピ指数を活用し、波乱度をレースIDで予測する記事で記載されている手順を参考にモデルの作成まで実行しました。
その後、ダウンロードしたテストデータ作成用SQLの対象年を2024にしたSQLでテストデータを作成し、Pythonデータ登録でコードの実行を行ってもCSVデータの作成などは行われているようですがプロンプトの画面が閉じた後に予測値用のテーブルを確認しても値が全てnull値になってしまいます。
テストデータ作成までは問題なくできており、ダミー値も出来ているようです。
テストデータ作成SQLで変更した部分は、開催部分の20230000と20239999を20240000と20249999にしたのみです。
その他、原因として考えられる点はありますか?
お手数お掛けしますが、教えてください。よろしくお願いします。2024/05/05 21:30 #15065管理人@PC-KEIBAキーマスターsoralily様
ご質問ありがとうございます。
管理人@PC-KEIBAです。では、1つずつ確認させてください。
apd_shisu_2(指数2)テーブルに、2024年のコンピ指数を登録してますか?2024/05/05 22:51 #15066soralily参加者お返事ありがとうございます。
はい、外部指数の登録ページを参考に指数No1にコンピ指数を直近の開催まで登録しています。
また、改めてapd_shisu_2のテーブルを確認しましたが、2007年から指数のデータは入っていました。
2024年も現時点では本日のものまでデータとして登録済みです。2024/05/06 08:39 #15069管理人@PC-KEIBAキーマスターでは、「PC-KEIBA Database」のログを確認していただけますか?
■ログファイルの場所
C:\Users\(Windowsのユーザー名)\AppData\Roaming\PC-KEIBA Database\logs■ログファイル名
app.logログファイルをテキストエディタで開き、「Python」で検索してください。もし見つかった場合は、関連するログをここに貼り付けてください。
2024/05/06 10:06 #15070soralily参加者今回のnull値を返すという部分に対するログは記録されていないようでした。
また、再度、何度か同じpythonデータ登録の処理を行いましたが、プロンプト画面が表示された後、処理終了となり、新たなログは記録されませんでした。
過去にテストデータテーブル作成前に実行したときのエラーログやデータ分析方法の選択間違いで発生したエラーログは、42p01リレーションデータテーブルが存在しませんというような表現で記録されています。2024/05/06 11:07 #15071管理人@PC-KEIBAキーマスターでは、ウイルス対策ソフトが干渉している可能性はありませんか?
予測値ファイルの出力を妨害されてるとか。2024/05/06 13:36 #15073soralily参加者ウイルスソフトを停止して実行してみましたが、結果としてはnull値のままでした。
実行中のプロンプト画面の処理を見ると、Pythonのコードと同じディレクトリ内に「~prob.csv」をレース毎に作成しているようです。
その後、5月の処理に進まず、4月最終日で処理が終わった段階でプロンプト画面が閉じて処理が終了する動作となっています。
また、出力されたCSVファイルは、実行したPythonコードのフォルダ内には残っていません。
なお、モデルの作成は、記事と同じ結果となったので、問題なく出来ていそうです。2024/05/06 14:32 #15074管理人@PC-KEIBAキーマスター> また、出力されたCSVファイルは、実行したPythonコードのフォルダ内には残っていません。
その動作自体は正しいですが、実行中に任意の「~prob.csv」ファイルを別の場所にコピーし、予測値が正しく書き込まれているかどうか、テキストエディタで開いて確認していただけますか?
処理が期待通りに完了するまで、テストデータは1日分だけなど、少量で問題ありません。2024/05/06 16:41 #15075soralily参加者CSVファイルを確認したところ、予測値はきちんと作成されていました。また、「~prob.csv」のファイルもあり、そのファイル内にも正しくデータが書き込まれているようです。作成したデータを予測値のテーブルに書き込みを行う処理の部分で何らかのエラーが生じ、データベースに取り込めていないようです。
また、テストデータ作成のSQLのコードを変更した際に、20240400と20240600に変更してみましたが、2024年4月分のデータしかテーブルに記録されていなかったので、4月で処理が終了するのは、それが原因のようでした。予測の実行コードを配置したディレクトリのアドレスの途中に日本語が入っているのですが、その点がエラーの原因になるという可能性はあるでしょうか?
2024/05/06 17:02 #15076管理人@PC-KEIBAキーマスター> 予測の実行コードを配置したディレクトリのアドレスの途中に日本語が入っているのですが、その点がエラーの原因になるという可能性はあるでしょうか?
ああ、なるほど。その可能性はありますね。
記事のサンプルにある通り、「C:\pckeiba」で試してみてください。2024/05/06 18:18 #15079soralily参加者サンプルの通り配置し、配下のフォルダも日本語が入らないように変更して、いずれのパターンも実行したところ、両方とも成功しました。
やはりディレクトリのパス名が悪かったようです。
途中のモデル構築まで全く問題なく進んでおり、予測の実行ではエラーも返ってこなかったので、手掛かりもなく途方に暮れてましたが、おかげさまで解決出来ました。ありがとうございます。
SQLやPythonは、初めて利用するため、また質問させてもらうこともあるかもしれませんが、今後ともよろしくお願いします。2024/05/06 18:38 #15081管理人@PC-KEIBAキーマスターsoralily様
ご報告いただき、ありがとうございます。
無事に解決されたとのことで安心しました。今回の問題はPostgreSQLに関するものであり、解決が難しい部分でしたが、ともかく解決できてよかったです。
お付き合いいただき、ありがとうございました。また何かご不明点やご質問がございましたら、どうぞご遠慮なくお問い合わせください。
これにて本件はクローズとさせていただきます。※トピックのタイトルを変更させていただきました。
修正前:Pythonデータ登録実行後、予測値テーブルの値がnullとなる
修正後:Pythonデータ登録で予測値が登録できない -
投稿者投稿
- トピック「Pythonデータ登録で予測値が登録できない」には新しい返信をつけることはできません。