BODIK Utility(12)BODIKエディタ

ISITでは、自治体様がオープンデータを公開する際の助けになるようなツール群(BODIK Utility)を開発し、公開しています。皆様のオープンデータ公開業務にお役立てください。

BODIKエディタ

オープンデータのCSVを編集することに着目したWebエディタです。

BODIK Utilityの各機能を1つのエディタで使えるようにしました。オープンデータを編集するならこのエディタだけでOK、と思っていただけると嬉しいです。

Excelの「おせっかい」

通常、CSVを編集するときはExcelを使うユーザーが多いのではないでしょうか?表形式のデータを編集するとき、Excelは非常に優秀な機能を提供してくれますが、いくつか困った現象(「Excelのおせっかい」と呼んでいます)が発生することがあります。

  • 日付を表すとみなせる文字列を勝手に日付型に変更する。(例:住所の番地の「1-2」を「1月2日」に変換する)
  • 日付の書式をスラッシュ区切りに変更する。(例:「2025-04-01」を「2025/4/1」と表記する)
  • 数字と思われる文字列の先頭の「0」を取り除く。(例:自治体コード「012345」が「12345」になってしまう)

こんな経験はありませんか?

  1. Excelで書式などを設定して思い通りの形式のデータに揃えることができたので、CSVで保存した。
  2. Excelで開いてみたら、直したはずなのにおかしくなっている。
  3. おかしいなと思いながら、同じ対応をして保存した。
  4. Excelで開いたら、、、、、この繰り返し

このような経験されたユーザーは多いのではないでしょうか?

そもそもCSVに保存した時点で、CSVにはExcelの書式などの各種設定情報は保存されません。ちゃんと作ったはずのCSVをExcelで開くと、Excelの「おせっかい」が発動してしまいます。

Excelに「おせっかい」をやめさせるのは難しいので、Excelに変わるオープンデータ専用のエディタを開発することにしました。これが私の春休みの宿題です。

BODIKエディタの機能

ブラウザでスプレッドシートのデータを表示する仕組みとして、BODIK Utilityの「フォーマッタ」などで使っている「AG-Grid」を使います。今回は、スプレッドシートを表示するだけではなく、AG-Gridの編集機能も組み込みました。

列データ編集1

比較的単純な編集機能群です。

アクション説明対象
クリアする選択した列のデータをクリアする列全体
文字列をセットする選択した列にパラメータで指定した文字列をセットする列全体
他の列の値をセットする選択した列のデータを他の列にセットする列全体
他の列にコピーする選択した列に他の列のデータをコピーする列全体
先頭に文字列を追加する選択した列の先頭に文字列を追加する列全体
最後に文字列を追加する選択した列の最後に文字列を追加する列全体
先頭に他の列を追加する選択した列の先頭に他の列を追加する列全体
最後に他の列を追加する選択した列の最後に他の列を追加する列全体
他の列と比較する選択した列と指定した列を比較する列全体

列データ編集2

少し複雑な編集機能群です。

アクション説明対象
クリップボードにコピーする選択した列のデータをクリップボードにコピーする列全体
クリップボードからペーストする選択した列にクリップボードのデータを貼り付ける列全体
0埋めするパラメータで指定したパターンで埋めする。列全体
改行を除去する選択した列のデータから改行を除去する。
Excelでセル内改行されたデータの改行除去に使用する。
列全体
置換するパラメータ1で指定した文字列をパラメータ2で置き換える。
パラメータ1の文字列が複数存在する場合は、最初の1つのみ置き換える
列全体
正規表現で置換する正規表現を使って、パラメータ1で指定した文字列をパラメータ2で置き換える。
パラメータ1の文字列が複数存在する場合は、すべて置き換える。
列全体
ひらがなをカタカナに変換する選択した列のひらがなをカタカナに置き換える。列全体
和暦を西暦に変換する選択した列の和暦を西暦の日付(YYYY-MM-DD)に置き換える。列全体
日付(YYYY-MM-DD)に整形する選択した列の日付データを YYYY-MM-DD 形式に揃えます。スラッシュ区切りをハイフン区切りに変更し、月、日を2桁の0埋めします。列全体
時刻(HH:MM)に整形する選択した列の時刻データを HH:MM 形式に揃えます。時、分を2桁の0埋めします。列全体

列操作

アクション説明対象
列を追加するパラメータで指定した名前の列を表の最後に追加する列全体
列を非表示にする選択した列を非表示にする。
※データとしては残っているが、ダウンロードすると消える。
列全体
列を表示する非表示にした列を復活するときに使う。列全体
全列を非表示にするすべての列を非表示にする列全体
全列を表示するすべての列を表示する列全体
オリジナル列を非表示にする「オリジナル」列グループを非表示にする列全体
オリジナル列だけを表示する「オリジナル」列グループだけを表示する列全体
データ型を文字列にする選択した列のデータを文字列とする列全体
データ型を数値にする
選択した列のデータを数値とする(ソートするときに数値の大小でソートできる)
列全体

行操作

アクション説明対象
行をコピーする選択した行の複製を追加する。
行を追加する空っぽの行を追加する。
行を削除する選択した行を削除する。

BODIK Utility機能等

BODIK Utilityで提供する機能などを呼び出します。

アクション説明対象
地図に表示するマップが表示されます。
「緯度」「経度」の情報を使って、地図上にマーカーを表示する。選択した列のデータをポップアップに表示する。
※「緯度」「経度」列が必要。
列全体
住所を緯度経度に変換するマップが表示されます。
選択した列のデータを「住所」とみなし、外部APIを使って「緯度経度」に変換する。
※「緯度」「経度」列が必要。
セル
※微調整が必要なので個別指定
住所を正規化・分割する選択した列のデータを「住所」とみなし、外部APIを使って「住所の正規化」を呼び出す。
※「所在地_連結表記」,「所在地_都道府県」, 「所在地_市区町村」,「所在地_町字」,「所在地_番地以下」列が必要。
セル
住所を郵便番号に変換する選択した列のデータを「住所」とみなし、外部APIを使って郵便番号に変換する。
※「郵便番号」列が必要
セル
URLを表示する選択したセルのURLをブラウザの別タブで表示する。セル
URLの画像を表示する選択したセルのURLを画像としてブラウザの別タブで表示する。セル
URLのリンク切れをチェックする選択した列のデータをURLとしてリンク切れを確認する。列全体

セルのエディタ設定

セルのデータに応じた入力エディタを設定します。

アクション説明対象
テキストエディタを設定する標準のテキストエディタ(文字数:80文字まで)を設定する。列全体
ラージテキストエディタを設定する長文のテキストエディタ(文字数:2,048文字まで)を設定する。列全体
テキストセレクタを設定するパラメータにカンマ区切りで指定した単語の中から選択するコンボボックスを設定する。列全体

自治体標準ODS用セレクタ

自治体標準ODSで定義されている予約語のセレクタを設定します。

アクション説明対象
文化財の文化財分類(単一)セレクタを設定する自治体標準ODSの「文化財」の「文化財分類」の選択肢を表示するコンボボックスを設定する。
定義書では複数選択となっているが、このツールでは単一選択となる。
列全体
文化財の種類セレクタを設定する自治体標準ODSの「文化財」の「種類」の選択肢を表示するコンボボックスを設定する。列全体
介護サービス事業所の実施サービス(単一)セレクタを設定する自治体標準ODSの「介護サービス事業所」の「実施サービス」の選択肢を表示するコンボボックスを設定する。
定義書では複数選択となっているが、このツールでは単一選択となる。
列全体
医療機関の種類セレクタを設定する自治体標準ODSの「医療機関」の「種類」の選択肢を表示するコンボボックスを設定する。列全体
医療機関の災害拠点分類セレクタを設定する自治体標準ODSの「医療機関」の「災害拠点分類」の選択肢を表示するコンボボックスを設定する。列全体
消防水利施設の種別セレクタを設定する自治体標準ODSの「消防水利施設」の「種別」の選択肢を表示するコンボボックスを設定する。列全体
食品等営業許可の営業の種類セレクタを設定する自治体標準ODSの「食品等営業許可」の「営業の種類」の選択肢を表示するコンボボックスを設定する。列全体
食品等営業許可(R3以降)の営業の種類セレクタを設定する自治体標準ODSの「食品等営業許可(R3以降)」の「営業の種類」の選択肢を表示するコンボボックスを設定する。列全体
食品等営業許可の申請区分セレクタを設定する自治体標準ODSの「食品等営業許可」の「申請区分」の選択肢を表示するコンボボックスを設定する。列全体
有無セレクタを設定する自治体標準ODSの「有無」の選択肢を表示するコンボボックスを設定する。列全体
可否セレクタを設定する自治体標準ODSの「可否」の選択肢を表示するコンボボックスを設定する。列全体

BODIKエディタの使い方

BODIKエディタは、次のリンクからアクセスし、ご利用ください

URL:https://utility.bodik.jp/bodikeditor

リンクを開くと、次のような画面が表示されます。

BODIKエディタ起動画面

編集するCSVファイルを指定する方法は3つあります。

  • 新規作成する
    1. 「新規作成」ボタンを押す。
    2. このエディタはデータが空っぽだと何もできないので、「全国地方公共団体コード」だけを含むデータを表示します。
      この項目が不要な場合は「列を非表示にする」コマンドで隠してください。
  • ローカルのCSVファイルを開く
    1. 「CSVファイルを開く」ボタンを押す。
    2. ローカルPCのCSVファイルを選択する。
  • Web上に置いてあるCSVファイルのURLを指定する
    1. 開きたいCSVのURLリンク、例えば、BODIK ODCSのリソースファイルのURLリンクをクリップボードにコピーしておく。
    2. 「URLから開く」ボタンを押す。
    3. 表示されたパネルのURL欄に開きたいCSVのURLリンクをペーストする。
    4. 「OK」ボタンを押す。

ファイルを指定すると、読み込んだCSVを表形式で表示します。

BODIKエディタの編集画面

この画面でCSVを編集することができます。

  1. 指定したCSVファイルをスプレッドシートとして表示します。
    グリッドの機能として、ソートとフィルタができます。
    • 列ヘッダーをクリックすると、指定された列でソートします。
    • 列ヘッダーの右端にある三本線(バーガーアイコン)をクリックすると、かんたんはフィルター設定ができます。
  2. グリッドのデータ部分をクリックすると、その列の背景が黄色で表示され、選択されていることを表します。
  3. 「アクションを選択する」でアクショングループを選択し、その中のアクションを選択してください。
  4. 選択したアクションに応じてパラメータ等を設定し、「実行」ボタンを押すと、選択した列に対して指定したアクションが行われます。
  5. 「自治体標準ODS」の右のコンボボックスで「自治体標準ODS」を指定できます。
    CSVを読み込んだ時点では「未指定」となっています。希望する「自治体標準ODS」の種類を選択してください。
    ここで指定した自治体標準ODSの項目に合わせて読み込んだCSVを表示します。
    自治体標準ODSに定義されている項目が最初に表示され、それ以外のCSVの固有の項目は最後部に配置されます。
  6. 「ダウンロード」ボタンを押すと、表示されているデータをUTF-8(BOM付き)のCSVファイルとしてダウンロードします。
    • 表示している状態でCSVに保存します。
    • 「非表示にした」項目は、ダウンロード時に書き込まれません。
  7. 「NEW」ボタンを押すと、起動画面に戻ります。

まずは自由にお使いください。

かんたんな使い方を別ブログで掲載します。こちらもご参照ください。

BODIK Utility(12) BODIKエディタ かんたんな使い方

ISITでは、自治体様がオープンデータを公開する際の助けになるようなツール群(BODIK Utility)を開発し、公開しています。皆様のオープンデータ公開業務にお役立てください。 BODIKエディタ オープンデータのC […]

ひらの