カテゴリー
BLOG research 医療機器・設備・環境

足並み揃わぬ都道府県データ | NES株式会社

 今日は保険医療機関のデータ集計をしましたが、相変わらずのデータフォーマットのバラバラさに苦労しました。




本省ではなく都道府県別

 保険医療機関のデータは厚生労働省の本省(霞が関)で取りまとめるのではなく、都道府県別に集計されています。

 ホームページ上では地方厚生局のサイトに掲載されますが、データをまとめるのは都道府県毎の担当官です。

 神奈川なら神奈川県駐在の職員、香川なら香川県駐在の職員が、ご当地のデータをまとめて地方厚生局に送り、ウェブサイトに掲載されます。

 本省の関与が薄いので、色々とバラバラになります。




掲載ページが不統一

 まず最初にアクセスするのが地方厚生局のウェブサイトですが、この時点で見た目が不統一です。

 コード内容別医療機関一覧の表示の方法は下表のようにバラバラです。

 特に九州局の圧縮ファイルの作り方がユニークで、福岡県というファイルに福岡県の医科・歯科・薬局のファイルが入っています。
 とりあえず医科だけまとめようと思っても、九州の場合は都道府県の圧縮ファイルを開いて取り出すのでそれだけ手間が増えます。
 関東信越局が10都県あっても医科・歯科・薬局の3つの圧縮ファイルで済みますが、九州局は8つの圧縮ファイルをダウンロードしなければならないので、これも手間です。

科目(医歯薬)都道府県Excel
北海道厚生局表:縦軸科目でZip
東北厚生局表:縦軸表:ヨコ科目でZip
関東信越厚生局表:ヨコ表:縦軸科目でZip
東海北陸厚生局テキストテキスト科目でZip
近畿厚生局表:縦軸表:ヨコ科目でZip
中国四国厚生局表:縦軸表:ヨコ科目でZip
四国厚生支局表:縦軸表:ヨコ科目でZip
九州厚生局都道府県別縦並び横4×縦2都道府県でZip


保険医療機関・保険薬局のコード内容別医療機関一覧

 コード内容別の医療機関リストは下図のような見た目です。図が小さいので、それぞれの図画をクリックしていただければリンクしていますのでご参照ください。

北海道
東北
関東信越
東海北陸

近畿
中四国
四国
九州


施設基準等の届出事項(届出受理医療機関名簿)

 施設基準の届出についても統一されてはいません。

北海道
東北
関東信越
東海北陸

近畿
中四国
四国
九州




ファイル名

 圧縮ファイルとしてダウンロードした後のエクセルファイルの名称が統一されていません。

 ファイル名に都道府県名が標準的に記載されていれば活用するのですが、残念ながら日本語と英語が混在し、都道府県名の位置なども統一されていません。

 少し前までは四国の4県のファイル拡張子が『.xlsx』ではなく『.xls』であったため管理がしづらかったのですが、現在は『.xlsx』に変更されています。

 ファイル名に法則性があるとすれば年と月がわかるようになっている、と見られる点です。
 残念ながら全県ではありません。
 残念ながら統一されていません。

 このファイル名の中で意外とやっかいなのが近畿厚生局のタイプです。
 『2022.11_kikanzentai_shiga_ika.xlsx』となるので拡張子(xlsx)の前のピリオド以外にもう1つのピリオドが存在します。
 このピリオドを何らかの処理のトリガとして使っている場合、例えば『ピリオド以降は拡張子なので表示しません』という指示を出すような場合、このファイル名だと近畿局のすべてのファイルが『2022』になってしまいます。そして拡張子名が『11_kikanzentai_shiga_ika.xlsx』になるので、その拡張子を開くためのソフトが見つからず、ややこしいファイルになってしまいます。

都道府県ファイル名
北海道000257557.xlsx
000257559.xlsx
青森県02青森 コード内容別医療機関一覧表(医科)20221104.xlsx
岩手県03岩手 コード内容別医療機関一覧表(医科)_20221104_082016.xlsx
宮城県04宮城 コード内容別医療機関一覧表(医科)_20221107_094952.xlsx
秋田県05秋田 コード内容別医療機関一覧表(医科)_20221104_083033.xlsx
山形県06山形 コード内容別医療機関一覧表(医科)_20221104_083601.xlsx
福島県07福島 コード内容別医療機関一覧表(医科)_20221104_084126.xlsx
茨城県081コード内容別一覧表(医科)茨城r0411.xlsx
栃木県091コード内容別一覧表(医科)栃木r0411.xlsx
群馬県101コード内容別一覧表(医科)群馬r0411.xlsx
埼玉県111コード内容別一覧表(医科)埼玉r0411.xlsx
千葉県121コード内容別一覧表(医科)千葉r0411.xlsx
東京都131コード内容別一覧表(医科)東京r0411.xlsx
神奈川県141コード内容別一覧表(医科)神奈川r0411.xlsx
新潟県151コード内容別一覧表(医科)新潟r0411.xlsx
富山県2211(富山医科)コード内容別医療機関一覧表.xlsx
石川県2211(石川医科)コード内容別医療機関一覧表.xlsx
福井県2022.11_kikanzentai_fukui_ika.xlsx
山梨県191コード内容別一覧表(医科)山梨r0411.xlsx
長野県201コード内容別一覧表(医科)長野r0411.xlsx
岐阜県2211(岐阜医科)コード内容別医療機関一覧表.xlsx
静岡県2211(静岡医科)コード内容別医療機関一覧表.xlsx
愛知県2211(愛知医科)コード内容別医療機関一覧表.xlsx
三重県2211(三重医科)コード内容別医療機関一覧表.xlsx
滋賀県2022.11_kikanzentai_shiga_ika.xlsx
京都府2022.11_kikanzentai_kyoto_ika.xlsx
大阪府2022.11_kikanzentai_osaka_ika.xlsx
兵庫県2022.11_kikanzentai_hyogo_ika.xlsx
奈良県2022.11_kikanzentai_nara_ika.xlsx
和歌山県2022.11_kikanzentai_wakayama_ika.xlsx
鳥取県医科31鳥取_コード内容別医療機関一覧表.xlsx
島根県医科32島根_コード内容別医療機関一覧表.xlsx
岡山県医科33岡山_コード内容別医療機関一覧表.xlsx
広島県医科34広島_コード内容別医療機関一覧表.xlsx
山口県医科35山口_コード内容別医療機関一覧表.xlsx
徳島県01_04 徳島 医科 コード内容別医療機関一覧表.xlsx
香川県01_01 香川 医科 コード内容別医療機関一覧表.xlsx
愛媛県01_07 愛媛 医科 コード内容別医療機関一覧表.xlsx
高知県01_10 高知 医科 コード内容別医療機関一覧表.xlsx
福岡県r4_11_fukuoka_ika_02.xlsx
佐賀県r4_11_saga_ika_02.xlsx
長崎県r4_11_nagasaki_ika_02.xlsx
熊本県r4_11_kumamoto_ika_02.xlsx
大分県r4_11_ooita_ika_02.xlsx
宮崎県r4_11_miyazaki_ika_02.xlsx
鹿児島県r4_11_kagoshima_ika_02.xlsx
沖縄県r4_11_okinawa_ika_02.xlsx

 東北局はファイル名の末尾がファイル作成日かなと思います。
 青森や『YYYYMMDD』で西暦年・月・日の8桁です。
 他県は『YYYYMMDD_HHNNSS』で西暦年・月・日にアンダーバーを挟んで時・分・秒になっていると思います。
 この法則を見ると岩手県、秋田県、山形県、福島県の4県では11月4日の朝8時半頃に出力して提出したのだなという行動が透けて見えます。勤務が8時半からだとすると、出勤して席に座り、最初の仕事として出力をしているのだろうと思います。
 宮城県は11月7日の9時49分なので、もしかすると東北厚生局の本局として各県から11月4日に送られて来た分を週明けの7日朝に確認して、同時に自県の分を出力して業務を完了させているのかな、と思いました。

 東北局は西暦表示でしたが、関東信越局は『r0411』なので和暦表示です。
 この和暦表示が何かとやっかいなことを引き起こします。
 仮にExcelの関数を使って『r04』を『2022』に置き換えるReplace関数を使ったとしても、次の元号が始まった時に新たな関数を組まなければなりません。おそらくIf文を付けて、計算式もややこしくなると思います。
 現状でも『r04』をReplaceで『r』を 『20』に置き換えて『2004』として一旦は数字に、さらに『18』を足して2022年にするという面倒な数式を作らないとなりません。
 これが『令和04』となっていれば、まだExcel側も理解してもらえますが『r04』はやっかいです。

 東海北陸局は『2211』なので22年11月となっていると思います。
 これはさほど悪くないと思います。私が現役で仕事をしている間には『2122年』になることはないので2100年代の心配をする必要はありません。
 同様に1922年のデータもExcelで公開されていることはないと思いますので、今のところは良いのかなと思っています。

 中国四国厚生局と四国厚生支局は年月の区別がないファイル名になっています。




ファイルを開いて最初の情報が....

 ダウンロードしたExcelファイルを開いて最初にデータが表示されるのが3行目ですが、その行にあるデータが都道府県によって異なります。

 もう少し詳しく言うと、B3セルにデータが入っているとすれば都道府県名なのですが、下記のファイルには都道府県名の記載がありません。

  • 北海道
  • 茨城県
  • 栃木県
  • 群馬県
  • 埼玉県
  • 千葉県
  • 東京都
  • 神奈川県
  • 新潟県
  • 山梨県
  • 長野県
  • 香川県

 記載がないことによって困ることは、ファイル名などに都道府県名を入れたいときに困っています。
 後述する『医療機関番号』にも都道府県名が判明する必要があります。

 医療機関の所在地から都道府県名を探ることはできますが、医療機関の所在地欄を見ると、例えば北海道は『札幌市』から始まる住所の記載であるため『北海道』であるかどうかは明記されていません。




医療機関番号

 医療機関には『医療機関番号』という識別番号が付けられています。

 この番号は全国共通といえば共通なのですが、共通化されていません。

 『医療機関番号』は3つに分かれています。
 冒頭にある2桁が地域を識別する記号(都市区番号)になっているようです。
 次の4桁が医療機関等番号という、医療機関個別の番号です。
 最後の1桁が検証番号となります。計算式が決められています。


 都道府県から配布されるExcelシート内には[都市区番号][医療機関等番号][検証番号]の3つしか記載されていないので、全国の統一番号とは異なってしまいます。

 冒頭に2桁の都道府県番号、次に点数表番号を入れる必要があるため都道府県を識別した上で番号を入れなければなりません。 

【参照】医療機関等コードの入力規則




医療機関番号の不統一

 都道府県ごとに表示方法が違います。

 関東局だけでも表記ゆれが見られます。

 まず都市区番号が2桁と3桁のパターンがあります。3桁に合わせてゼロ詰めするべきか悩ましいところです。

 やっかいなのが『,』(カンマ)区切りに統一されていないという点です。
 神奈川県は1つ目がカンマで2つ目が『.』(ピリオド)です。
 千葉県は『-』(ハイフン)を使っています。
 長野県は『・』(中点)を使っています。

茨城県01,1005,6
栃木県010,074,2
群馬県01,0008,7
埼玉県030,176,2
千葉県01-0198-0
東京都01,1004,9
神奈川県010,006.5
新潟県011,120,4
山梨県01,0253,0
長野県01・1206・4

保険医療機関・保険薬局のコード内容別医療機関一覧




施設基準届出は記号なし

 保険医療機関・保険薬局のコード内容別医療機関一覧では医療機関番号の表示が不統一でしたが、施設基準届出になると関東信越局の中でも統一されます。

 中間に記号がなく7ケタの番号で表示されます。

 医科と歯科だけで保険医療機関が16万軒ありますが、施設基準届出は10倍くらいありますので、医療機関と届出を突合するためにはこの医療機関番号を適切に取り扱う必要があります。

 そのキーとなるはずの医療機関番号の表記ゆれを修正するプログラムを開発せざるを得ません。

施設届出基準




さぁ、手作業で一本化

 医科だけでも47都道府県で48個のファイルがあります。

 そのファイル名はバラバラです。

 医科だけでも合計9万軒以上あるので、Excelのシート上では9万行を使うことになります。

 実際にファイルを開いていただくとわかりますが、1医療機関で1行ではありません。

 下図の例ではいきなり1軒目が第12行から第17行まで6行使って1医療機関です。
 このペースでいくと全国で50万行以上必要になります。一応Excelの仕様では100万行まで対応できるので大丈夫かもしれませんが、医科と歯科を合わせると16万軒以上あるので6行ずつ使うと96万行以上、Excelの限界に近づきそうです。

保険医療機関・保険薬局のコード内容別医療機関一覧

 1医療機関で6行使っているが、列はそれぞれに個別の情報に対応しているだろうと期待します。
 残念ながら期待外れです。

 第4列は所在地が入っていますが、郵便番号と所在地(地番)は改行がなく1つのセルに収まっています。

 第5列は電話番号と勤務医数の列ということで、まったく関係のないものが取り扱われます。
 ここが取り扱いをややこしくする列です。
 第5列の2行目に『常 勤:』と書かれて空白(スペース)が入り数字が記載されます。常勤という文字に空白(スペース)が使われた上に、コロンの後ろにも空白(スペース)が入り、数ケタの数字で表記されるので法則性があるような、無いような感じです。
 ExcelならばSUBSTITUTE関数を使って全角スペースと半角スペースを共に削除する事になります。TRIM関数だと少々役不足かなと思います。
 常勤医だけでなく非常勤医も表示される、それぞれの内訳もあるのでこの第5列はかなり複雑です。


 この時点で50万行のExcelシートを扱う気力を失っていると思いますが、まだ先があります。

 第9列では病床数と診療科目を扱っています。

 病床数が一筋縄ではいきませんでした。
 『一般』だけでなく『療養』『精神』『結核』などがあります。まず手を煩わす事になったのが『一般(感染)』です。
 処理上は『一般』を見つけたら一般病床とするように指示したかったのですが『一般(感染)』の存在により、それができなくなりました。
 では『感染』で進めるとどうなるかというと診療科名で『感染症内科』『性感染症』などが引っ掛かります。

 病床数欄ではもう1つ課題があり、病床区分と同じ行に病床数が書かれていないことがあります。
 例えば『一般(感染)』を見つけて、左にある数字を取り込んで分類しようと思っても、そこは空白です。

 もう、ExcelやAccessでの処理では無理だと思ったので、Visual Studioを使ってC#言語でExcelファイルを編集するソフトを開発しました。




何やかんやとありまして....

 色々と調整すべきことが多い保険医療機関に関するデータですが、全国統一できました。

 C#言語で作ったプログラムでは地方厚生局が公開するExcelファイルを読込みXMLファイル化します。そのXMLファイルに二次医療圏のデータをコンバージョンします。そしてCSVファイルとして吐出しウェブデータベースに載せます。

 昨日アップデートした施設基準届出データベースには130万件超の届出情報が掲載されています。

 施設基準届出の全国データをまとめたデータベースを見たことがないので、もしかすると唯一無二かもしれません。


施設基準届出データベース検索
医療機関名 科目 都道府県 届出種別 届出記号


全国医療機関施設基準届出データベース(医科+歯科+薬局)


 医療機関についてはYahoo!などでも検索できるのでリストが存在することに価値はありませんが、当方が制作しているデータベースには厚生労働省に届け出ているままの情報が掲載されていますので、正確性は高いと思います。

 そして、前述の施設基準とのリンクもありますので、当該医療機関がどのような施設基準を満たして届出ているのかを知る事ができます。

 更に二次医療圏の情報も付加しているので、目的によっては使いよいデータベースになるのではないかと思います。


医科・歯科検索(医科/歯科区別検索)
医療機関名 都道府県 所在地 開設者 管理者(院長) 標榜科目


全国医療機関(病院・診療所)データベース(医科+歯科)


 存廃の厳しい調剤薬局もデータベース化しています。数の上では激変していないかもしれませんが、テナントとして入っていることが多いため入替や移転が目立ちます。


保険調剤薬局:
医療機関名 都道府県 所在地 開設者 管理者 標榜科目


全国保険調剤薬局データベース




おわりに

 医療機関の開設や保険診療を行う場合には許認可が必要であるため、どこかで情報を得られるようになっています。

 おそらく厚生労働省に行って情報開示請求すれば台帳を見る事ができるのだと思いますが、普段から霞が関に通うのも大変なのでインターネットが活用されます。

 電子データとして後悔されているExcelファイル等の数が多い上にフォーマットがバラバラ、Excelとして1本にまとめるのもなかなかの苦労です。

 今回はソフトを開発して一本化し、煩わしい作業から解放されましたが、それでも思わぬところで躓いています。

 毎月、20万軒以上の保険医療機関が収載された電子ファイルが更新されるので、毎月の作業が軽減されるように、これからも集計用ソフトの更新に努めていきたいと思います。