Pythonで選挙データを分析してみよう!⑦〜サポーターと選挙活動の効果測定編〜
このシリーズでは、2025/07/21に行われた参院選挙結果を分析するためのプログラムを、一つずつ紐解いて解説していきます。選挙データ分析シリーズ、いよいよ最終回です。 これまで、複雑な開票結果を整形し、候補者のパフォーマンスを多角的に見てきました。今回は、その分析をさらに一歩進め、「サポーターの存在や街頭演説など得票率に関連するのか?」という問いに、データを使って答えることに挑戦します。 チーム…
このシリーズでは、2025/07/21に行われた参院選挙結果を分析するためのプログラムを、一つずつ紐解いて解説していきます。選挙データ分析シリーズ、いよいよ最終回です。 これまで、複雑な開票結果を整形し、候補者のパフォーマンスを多角的に見てきました。今回は、その分析をさらに一歩進め、「サポーターの存在や街頭演説など得票率に関連するのか?」という問いに、データを使って答えることに挑戦します。 チーム…
このシリーズでは、2025/07/21に行われた参院選挙結果を分析するためのプログラムを、一つずつ紐解いて解説していきます。選挙データ分析シリーズ第6弾、今回はさらに一歩踏み込んで「比較分析」の世界に足を踏み入れます。 作成したコードは Github に公開しているので、興味があれば、見てみてください。※コードは、予告なく、改変/削除されることがあります。 前回は一人の候補者(と政党)を多角的に分…
このシリーズでは、2025/07/21に行われた参院選挙結果を分析するためのプログラムを、一つずつ紐解いて解説していきます。選挙データ分析シリーズ第5弾、いよいよ分析編に突入です。 作成したコードは Github に公開しているので、興味があれば、見てみてください。※コードは、予告なく、改変/削除されることがあります。 これまでは、人間には読みやすいけれど機械には優しくない、様々なフォーマットのデ…
このシリーズでは、2025/07/21に行われた参院選挙結果を分析するためのプログラムを、一つずつ紐解いて解説していきます。ついに第4弾です。これまでも手ごわいデータを相手にしてきましたが、今回はラスボス級の挑戦になります。 テーマは、比例代表の投票結果をまとめた cleanup_voting_result_by_proportional_representation.py。このスクリプトが立ち向…
このシリーズでは、2025/07/21に行われた参院選挙結果を分析するためのプログラムを、一つずつ紐解いて解説していきます。いよいよ第3弾です。 これまでは不要な行や列を「掃除」するのがメインでしたが、今回はデータの構造自体を分析しやすい形に「変形」させるという、一歩進んだテクニックに挑戦します。 作成したコードは Github に公開しているので、興味があれば、見てみてください。※コードは、予告…
このシリーズでは、2025/07/21に行われた参院選挙結果を分析するためのプログラムを、一つずつ紐解いて解説していきます。今回は第2弾です。 前回は小選挙区の投票結果を扱いましたが、今回は比例代表のデータ整形に挑戦します。使用するスクリプトは cleanup_voting_info_by_proportional_representation.py です。 作成したコードは Github に公開…
このシリーズでは、2025/07/21に行われた参院選挙結果を分析するためのプログラムを、一つずつ紐解いて解説していきます。 作成したコードは Github に公開しているので、興味があれば、見てみてください。※コードは、予告なく、改変/削除されることがあります。 前回は比較的シンプルなCSVを扱いましたが、今回はより実践的で手ごわい、複数シートにまたがるExcel形式の開票結果データを綺麗に整形…
はじめに e-statは、日本の政府統計データを集約したポータルサイトです。このサイトでは、国勢調査や労働力調査、消費者物価指数など、多岐にわたる統計データが公開されています。 通常、これらのデータはウェブサイト上で閲覧したり、CSVファイルとしてダウンロードしたりしますが、e-statは「API(Application Programming Interface)」機能も提供しています。APIを…
本記事は、boto3を利用して行っている。 準備と前項については以下記事を参照。 https://tech.tokiraku.com/archives/154 https://tech.tokiraku.com/archives/161 確認コードの再発行 登録が完了する前に確認コードを忘れてしまった場合の再発行。 cognito.forgot_password( ClientId=setting…
本記事は、boto3を利用して行っている。 準備は以下記事を参照。 https://tech.tokiraku.com/archives/154 Cognitoへのユーザー登録 sign_up を使用して、ユーザーの情報を登録する。 cognito.sign_up( ClientId=, SecretHash=, Username=, Password=, UserAttributes=, ); …
boto3のインストール pipを利用している場合は、boto3を以下のコマンドでインストールする。 pip install boto3 requirements.txt を用いている場合は、下記を追加する。 boto3==1.24 クライアントインスタンスの作成 下記コードにて、クライアントインスタンスが生成される。 import boto3 cognito = boto3.client( , …
SQL内で集計をおこなう際に、SQLであれば、「MAX」や「MIN」などと合わせて、「group by」を指定することがある。 ORM使用時は、「group by」を明示的に指定することはないため、少し書き方が違う。 下記のようなモデルがあったとする。 from django.db import models class test_dogs(models.Model): name = models…