日直地獄

小学校では事件が起きる

国会の「丁寧に説明」を可視化する

「丁寧に説明する」や「丁寧な説明を心がける」の印象がとにかく悪い。というのも、偉い人がこういうだけで、特に丁寧な説明が行われた試しがないと感じるからだ。誰も彼も「丁寧に説明」と言うだけで、それを履行しないというメソッドがはびこっている印象があるのだ。これをデータで確認したい。

「丁寧な説明」の運用と私が持っているイメージ

最近もこういう感じで「丁寧な説明」が出現していた。

まあこれは組織として動け、みたいな観点での批判を入れたいのでちょっと違う気がするが、各議員から丁寧な説明がされてるとは感じない。

「丁寧な説明」というと安倍さんが連発していたイメージがある。ただし、これは私が持っている「安倍さんは説明しない」というイメージバイアスや、立場的にメディアが取り上げる回数によるイメージバイアスがかかっている可能性が考えられる。

データの作り方

こういったバイアスを排除するために、国会会議録検索システムのAPIを利用して「丁寧な説明」「丁寧に説明」を検索したデータを作成した。
国会会議録検索システム
APIから得られるデータはかなり整理されていて、発言者や所属会派などのデータがあり単に表示するだけでも結構いい感じのデータが得られる。昭和22年からのデータを取得できるので、このAPIを整備した国立国会図書館の働きはすごいし大事な働きをされているなと思う。

ちなみにGoogleAppsScriptで収集した。スクリプトは以下に置いておく。


スクリプトを見る

const searchWord = "丁寧に説明";
const spreadsheetURL = "https://docs.google.com/spreadsheets/d/*******/edit#gid=0";

function getSheet() {
  const spreadsheet = SpreadsheetApp.openByUrl(spreadsheetURL);
  const sheet = spreadsheet.getSheetByName(searchWord) ? spreadsheet.getSheetByName(searchWord) : spreadsheet.insertSheet(searchWord);
  if(sheet.getLastRow() === 0) {
    sheet.appendRow([
      "発言ID",
      "会議録ID",
      "イメージ種別(会議録・目次・索引・附録・追録)",
      "検索対象箇所(議事冒頭・本文)",
      "国会回次",
      "院名",
      "会議名",
      "号数",
      "開催日付",
      "閉会中フラグ",
      "発言番号",
      "発言者名",
      "発言者所属会派",
      "発言者肩書き",
      "発言者役割",
      "発言",
      "発言URL",
    ])
  }
  return sheet;
}

function appendRow(sheet, formattedSpeechRecords) {
  const lastRow = sheet.getLastRow();
  sheet.getRange(lastRow+1, 1, formattedSpeechRecords.length, formattedSpeechRecords[0].length).setValues(formattedSpeechRecords)
}

function formatSpreachRecord(speechRecord) {
   return speechRecord.map((record) => {
     return [
       record.speechID,
       record.issueID,
       record.imageKindm,
       record.searchObject,
       record.session,
       record.nameOfHouse,
       record.nameOfMeeting,
       record.issue,
       record.date,
       record.closing,
       record.speechOrder,
       record.speaker,
       record.speakerGroup,
       record.speakerPosition,
       record.speakerRole,
       record.speech,
       record.speechURL
     ]
   })
}

function getSpeechRecord(url, nextRecordPosition) {
  const newUrl = nextRecordPosition ? url + "&startRecord=" + nextRecordPosition : url;
  Utilities.sleep(5000);

  const response = UrlFetchApp.fetch(newUrl);
  const json = JSON.parse(response.getContentText());

  return {
    speechRecord:json.speechRecord,
    nextRecordPosition: json.nextRecordPosition
  };
}

function appendSpeechRecord(sheet, url) {
  const content = getSpeechRecord(url);
  appendRow(sheet, formatSpreachRecord(content.speechRecord));
  let n = content.nextRecordPosition;
  
  while(n) {
    console.log(n)
    const result = getSpeechRecord(url, n);
    appendRow(sheet, formatSpreachRecord(result.speechRecord));
    n = result.nextRecordPosition;
  }
}


function main() {
  const url = "https://kokkai.ndl.go.jp/api/speech?recordPacking=json&maximumRecords=100&any=" + searchWord;
  const sheet = getSheet();
  appendSpeechRecord(sheet, url);
}

これで収集したデータをGoogleデータポータルで可視化した。見やすいように20年分をデフォルト期間にしているが、伸ばすこともできる。以下はダッシュボード及び感想です。

「丁寧な説明」発言ダッシュボード

(このまま動かせます。発言者や所属政党をクリックすると絞り込めます)

見どころ

与党は丁寧に説明しがち

「丁寧に説明しがち」というのは面白さ優先のフレーズであるが、民主党が政権与党であった2009年~2012年の間、自民党系の赤の面積が少なくなり、緑の民主党系の面積がメインになっていることがわかる。

与党は基本的に追求される側であり説明責任が求められ、そういう場合にこのフレーズが使われるということなのだろう。このあと本当に説明したのかはデータからはわからない。

第二次安倍政権は丁寧に説明しがち


上と同じグラフから見て取れる。第二次安倍政権から「丁寧に説明」というフレーズが格段に増えている様子が伺える。自分の印象とも合致する。

安倍さんと岸田さん


このグラフからは安倍さんが抜群に丁寧に説明している様子が見て取れるが、これは説明責任を持つ内閣総理大臣を長期に渡って担当していたという面はあるはず。一方、内閣総理大臣担当期間を考えると岸田さんが猛追していそう、という印象も受ける。

岸田さんに限定した発言回数

しかし意外と、内閣総理大臣以前からも言っていて、内閣総理大臣になってから丁寧な説明を連発しているというわけではなかった。(訂正:連発はしているが内閣総理大臣時代のみという訳ではなかったという事を言いたかった)

「丁寧な説明」メソッドを発明したのは誰だったのか

言葉としては「丁寧な説明」は存在していて良くて、本当に良くないのは言いっぱなしで丁寧な姿勢を示しながら説明しない態度である。実際に説明があったかどうかはこのデータからは示せないので、「丁寧な説明」メソッドを作ったのは誰、どの政党だったのかはここでは断定しないでおきたい。ただまあ、安倍さん連発してたよな、というイメージは正しかったというのが分かってよかった。

注意事項

データ的には「丁寧な説明」「丁寧に説明」が出現した発言のみを集計しているので、文脈は参照していない。例えば「丁寧な説明をしてないじゃないか」といった追求もカウントされてしまうことに注意したい。