組み合わせの決め方と、分析側が整えるデータ(設計メモ)

令和8年度 千葉県地域医療提供体制データ分析チーム構築支援事業 / 可視化ツールの操作設計・データ整備仕様
「組み合わせを先に決めるのか、指標を先に決めるのか」「できない組み合わせをどう判別するのか」を整理し、あわせて 分析側(千葉大)がデータとして整えるべき内容を仕様として示します。要点は、可否を決めるのは“データの型”であり、それをメタデータとして分析側が付与するという一点です。

1結論:指標(データ項目)ファーストを基本にする

指標を先に選び、その指標が持つ「型」と「軸」から、使える見せ方を自動的に決める。
1指標を選ぶ例:手術実施率(見たいこと)
2型・軸を読む単一値/地域・がん種・年齢で集計可
3使える見せ方が出る色分け地図・棒・ランキング・ヒートマップ
4必要なら指標を追加同じ型の指標で二変量・散布図
現行プロトタイプは「データの種類(=型)を先に選ぶ」形(組み合わせファースト)です。仕組みは同じですが、職員にとっては指標ファーストの方が入口として自然なため、指標選択から型を自動判定する形へ寄せることを推奨します。

2指標ファースト と 組み合わせファースト の比較

A. 指標ファースト(推奨)
指標を選ぶ → 型・軸から見せ方が自動で決まる。
長所
  • 「何を見たいか」で操作でき直感的。
  • 不可能な組み合わせを提示しないので迷わない。
  • 指標を足す=比較、と操作が自然に拡張。
留意
  • 内訳(構成比)・フローは「1つの指標」ではないため、これらも“データ項目”として一覧に並べる工夫が要る。
B. 組み合わせ(型)ファースト
データの種類(単一値・2指標・構成比・フロー)を先に選ぶ。
長所
  • 実装が単純(型ごとに見せ方が固定)。
  • 構成比・フローを最初から明示できる。
留意
  • 「型」という抽象概念を先に理解させる必要があり、一般職員にはやや難しい。
実装上はどちらも同じ「型・軸メタデータ」で動きます。違いは“入口”だけ。推奨は A(指標ファースト)+ 少数のテンプレート。

3「できる/できない組み合わせ」の判定ロジック

可否は、選んだデータ項目の「型」と「軸」が、各見せ方の「要求する形」を満たすかで決まります。ツールはこれを機械的に照合し、満たさない見せ方を自動で選べなくします。

判定ルール(擬似コード):
見せ方が使える = (項目.型 が 見せ方.受入れる型 に含まれる) かつ (見せ方.必要な軸 が 項目.軸 に揃っている)
2指標の見せ方(二変量・散布図):もう一方の指標が「同じ型(単一値)・同じ地域軸」を持つ ときだけ選択可。

見せ方 × 必要なデータの形(対応表)

見せ方必要なデータの型必要な軸指標の数
色分け地図(コロプレス)単一値地域1手術実施率を医療圏別に
棒グラフ地図単一値地域1患者数を医療圏の棒で
ランキング単一値地域1救急搬送件数の多い順
ヒートマップ単一値地域+カテゴリ軸(例:がん種)1医療圏×がん種の手術実施率
二変量地図単一値 ×2同じ地域軸2手術実施率×無治療率
散布図単一値 ×2同じ地域軸2手術実施率×自給率
構成比/構成比地図内訳(合計100%)地域1組治療選択(手術・放射線・薬物・無治療)
受療動向フローフロー(住所地→受診先)地域(2地点)1組患者の流出入
プロポーショナルシンボル地図(施設点)施設点施設の緯度経度1病院を実位置に、円=病床数/患者数
表(Excel/VBA相当)どの型でも可常に出力可能(フォールバック)
例:「平均在院日数」を選ぶと単一値なので 色分け地図・棒・ランキング・ヒートマップが有効。二変量は「もう1つ単一値の指標」を足したときだけ有効。フロー・構成比は型が違うので選べない(グレーアウト)。この判定は職員に見える形(灰色)で表現します。

4データ項目の「型」(4種類)

意味データの形(列の例)使える見せ方
単一値
(メジャー)
地域ごとの1つの数値地域, 軸…, 値色分け地図/棒/ランキング/ヒートマップ/(2つで二変量・散布図)
内訳
(構成比)
合計100%になる内訳地域, 軸…, 区分, 値
(例:手術/放射線/薬物/無治療)
構成比/構成比地図
フロー
(OD)
2地点間の量住所地, 受診先, 軸…, 値受療動向フロー(地図)/OD表
クロス集計地域×カテゴリの値地域, カテゴリ, 値ヒートマップ/表
施設点
(ポイント)
施設単位の位置と値施設ID, 緯度, 経度, 医療圏, 値…プロポーショナルシンボル地図/ピン/施設ランキング
この「型」を分析側がデータに付けておけば、ツールは中身を解釈せずとも、機械的に見せ方の可否を判定できます。

5分析側が整えるべきデータ(整備仕様)

ツールに渡すのは「①データ項目カタログ(メタデータ)」+「②集計値の実データ」+「③軸マスタ」の3点セットです。個票は渡しません(集計・秘匿は分析側で完了)。

① データ項目カタログ(メタデータ)

「どんな指標があり、どの型・軸で、どう説明するか」の一覧。この「説明」列がツールの用語ヘルプにそのまま使われます。

項目ID表示名説明(ヘルプ表示)単位使える軸秘匿出所/分析項目
M_SURG_RATE手術実施率対象患者のうち手術を受けた人の割合%単一値地域(医療圏/市町村)・がん種・年齢・年度あり国提供(受療動向)/#9
M_NOTX_RATE無治療/BSC率積極的治療を行わなかった人の割合%単一値地域・がん種・年齢・年度あり国提供/#9
M_PTS患者数診断・治療された患者のおおよその数単一値地域・がん種・年齢・年度ありDPC/#12
C_TREAT_MIX治療選択の構成手術・放射線・薬物・無治療の割合%内訳地域・がん種・年齢・年度あり国提供/#9
F_FLOW受療動向患者住所地から受診医療圏への流れフロー地域(2地点)・がん種・年度あり国提供・DPC/#10
M_EQUIP高額医療機器数手術支援ロボット・放射線治療装置等の台数単一値地域・年度なし現況報告書/#8

② 集計値の実データ(ロング形式が扱いやすい)

「1行=1つの集計値」の縦持ち。項目IDと軸のコードで値を持ちます(型ごとに形が少し異なります)。

medical_areayearcancerageitem_idvaluesuppressed
1201(千葉)2024all75plusM_SURG_RATE590
1205(香取海匝)2024all75plusM_SURG_RATE450
1209(安房)2024lung85plusM_SURG_RATE1
内訳(構成比)は 区分(category) 列を追加(手術/放射線/薬物/無治療)。フローは medical_areaorigin, dest の2列にします。いずれも同じ「縦持ち+項目ID」の考え方で統一できます。

③ 軸マスタ(コードと表示名の対応)

医療圏マスタ(例)
1201 千葉(千葉市)
1202 東葛南部(市川・船橋 ほか)
1203 東葛北部(松戸・柏 ほか)
1204 印旛(成田・佐倉 ほか)
1205 香取海匝(銚子・旭 ほか)
1206 山武長生夷隅(東金・茂原 ほか)
1207 市原(市原市)
1208 君津(木更津・君津 ほか)
1209 安房(館山・鴨川 ほか)
その他の軸(例)
がん種:all / lung / stomach / colon / breast / other
年齢層:all / 75plus / 85plus
年度:2022 / 2023 / 2024
地域粒度:医療圏(9)/ 市町村(コードは国の行政区域コードに準拠)
※医療圏コードは連携キー。市町村は国土数値情報と同じコードで地図と結合。

④ 秘匿処理・欠測の扱い(分析側で事前に)

⑤ 更新運用

6サンプルデータ → 地図・グラフ表現(実例)

ここでは、分析側が整える ②集計値の実データ(前セクション) が、ツール上で 実際にどの地図・グラフになるか を、 実在の千葉県の地理(国土数値情報の市区町村境界)を用いて示します。ツールはCSVの値を色や矢印に機械的に割り当てるだけで、数値の意味(良い・悪い)は解釈しません。

1分析側がCSVを整える型に沿った列(コード・軸・値)で用意
2コードで地図に結合medical_area=医療圏コードで境界データと突合
3値を色/矢印へ割当ツールが描画(意味は判断しない)
4県職員が分布を読む解釈・政策判断は人が行う
例A:単一値(メジャー)→ 色分け地図(コロプレス)
依頼する型:単一値 / 列:medical_area, year, item_id, value, suppressed
▼ 分析班へ依頼するCSV(例:手術実施率 M_SURG_RATE を医療圏別に。1行=1つの集計値)
medical_area(名称)yearitem_idvaluesuppressed
1201(千葉)2024M_SURG_RATE590
1202(東葛南部)2024M_SURG_RATE620
1203(東葛北部)2024M_SURG_RATE570
1204(印旛)2024M_SURG_RATE490
1205(香取海匝)2024M_SURG_RATE450
1206(山武長生夷隅)2024M_SURG_RATE410
1207(市原)2024M_SURG_RATE540
1208(君津)2024M_SURG_RATE470
1209(安房)2024M_SURG_RATE430
地図になる仕組み:CSVの medical_area(例 1201)を、国土数値情報の市区町村境界に付与した 医療圏コードで結合します。ツールは value5段階に区分して色に対応づけて塗るだけで、値の高低の意味は判断しません。(名称は③軸マスタで対応。CSV本体はコードのみで可)
  • 1202 東葛南部=62 は最上位クラスとして最も濃い青で表示。
  • 1206 山武長生夷隅=41 は最下位クラスとして最も薄い青。
  • suppressed=1 の行(少人数セル)は値を空にして渡し、地図では灰色「表示なし」。
― ツール上の表示イメージ(千葉県・二次医療圏/実地理)―
手術実施率(%) 40 65 表示なし(秘匿)
例B:内訳(構成比)→ 構成比地図(各医療圏に帯を重ねる)
依頼する型:内訳 / 単一値との違い=category 列を追加し、各地域で合計100
― 構成比地図の表示イメージ(治療選択の内訳)―
手術 放射線 薬物 無治療
▼ 依頼するCSV(区分ごとに1行。合計が100になる内訳)
medical_area(名称)item_idcategoryvalue
1201(千葉)C_TREAT_MIXsurgery(手術)58
1201(千葉)C_TREAT_MIXradiation(放射線)14
1201(千葉)C_TREAT_MIXdrug(薬物)20
1201(千葉)C_TREAT_MIXnone(無治療)8
1204(印旛)C_TREAT_MIXsurgery(手術)49
…(印旛・安房も同様に4区分=4行ずつ。各医療圏で合計100)
単一値からの差分はこれだけ:category(手術/放射線/薬物/無治療)の列が増え、地域ごとに複数行になります。ツールはこの内訳を各医療圏の 帯グラフ(または円)として地図上に重ね、構成の地域差を見せます。単一値の色分けと同じ結合キー(医療圏コード)で描けます。
例C:フロー(OD)→ 受療動向フロー(住所地→受診先を矢印で)
依頼する型:フロー / 地域列を origin・dest の2列にする(2地点間の量)
▼ 依頼するCSV(住所地→受診先の患者数。1行=1つの流れ)
origin(住所地)dest(受診先)item_idvalue
1209(安房)1201(千葉)F_FLOW210
1208(君津)1201(千葉)F_FLOW160
1206(山武長生夷隅)1201(千葉)F_FLOW190
1204(印旛)1203(東葛北部)F_FLOW140
フローの見せ方:ツールは origindest の医療圏コードを両端の重心に結び、矢印の太さ=value(人数)で描きます。どの地域から患者が集まる/流出するかの分布が一目で分かります(判断は人が行う)。
  • 安房→千葉=210 が最も太い矢印。周辺から千葉への集約の分布が見える。
― 受療動向フローの表示イメージ ―
3例に共通するのは、「地域コード+軸+値」というCSVの形さえ整えば、ツール側の追加開発なしに地図へ描き分けられるという点です。分析側は型(単一値/内訳/フロー)に沿って列を用意することに集中すればよく、地図の作り込みはツールが担います。

7施設単位(ポイント)データ ― 実データ軸の例

「二次医療圏で集計」は表示粒度の選択で、データの限界ではありません。入院系の多くは個別の病院単位で公開されており(病床機能報告 個票・DPC退院患者調査)、施設の位置(緯度経度)も国土数値情報で取得できます。ここでは実在の千葉県主要病院を実位置に点で表示し、地図に重ねる参照データ2種のカラム構成を、スイッチで切り替えて確認できます。
円の大きさ=許可病床数(病床機能報告)
開設者: 大学病院系 自治体(県・市) 公的(日赤・独法等) 医療法人
円の大きさ=値の大小(面積比)。位置は実在の緯度経度(同一投影で市町村境界に整合)。
下のスイッチで、地図に重ねている2つの参照データの「カラム構成(データ辞書)と実サンプル行」を切り替えて確認できます(現在表示中のデータが地図の円の大きさに反映されます)。
出所:病床機能報告 個票(千葉県オープンデータ・圏域別に病院/有床診療所の個票を公開)。位置は国土数値情報 医療機関(P04)の緯度経度で付与。値は公開値ベースの機能イメージ(機能別内訳は例示)。
カラム構成(データ辞書)
カラム型/単位説明
iryo_codeコード医療機関コード(識別子)
name文字医療機関名
address文字所在地(市区町村・住所)
medical_areaコード二次医療圏(結合キー)
opener区分開設者(国立大学法人/県/市/日赤/医療法人 等)
beds_total許可病床数(合計)
func_kodo高度急性期 病床数
func_kyusei急性期 病床数
func_kaifuku回復期 病床数
func_mansei慢性期 病床数
lat, lon緯度・経度(P04で付与=地図の点)
実サンプル行(抜粋)
医療機関名医療圏開設者許可病床高度急性急性回復慢性
総合病院国保旭中央病院香取海匝地方独法9896072090119
千葉大学医学部附属病院千葉国立大学85032053000
亀田総合病院安房医療法人8651006009075
松戸市立総合医療センター東葛北部6008052000
出所:DPC導入の影響評価に係る調査「退院患者調査」(施設別に公表=病院情報の公表)。10件未満は「-」でマスク(秘匿)。施設IDでP04の位置に接続。値は機能イメージ。
カラム構成(データ辞書)
カラム型/単位説明
kokuji_noコード告示番号・通番(施設ID)
name文字施設名
dpc_total人/年年間退院患者数(DPC対象)
age_dist年齢階級別 退院患者数(10歳刻み)
mdc_dist診断群分類(MDC)別 患者数
alos_self平均在院日数(自院)
alos_nation平均在院日数(全国)
surg_major診療科別 主要手術件数
suppressedフラグ10件未満は「-」(秘匿)
実サンプル行(抜粋)
施設名年間退院患者消化器(MDC06)例平均在院日数(自院)主要手術(例)
総合病院国保旭中央病院22,3002,85011.84,120
千葉大学医学部附属病院20,1002,40012.95,600
亀田総合病院19,4002,51010.64,780
さんむ医療センター3,45021013.2-
対応の要点:分析側は「施設マスタ(施設ID・緯度経度・種別・医療圏コード)施設別の集計値(病床数/患者数/手術件数…+秘匿フラグ)」を用意。位置は国土数値情報P04(住所のみの場合はジオコーディング)。入院は病院+有床診療所が中心(無床診療所は外来・在宅系)。施設×疾患×年齢と細分するほど「10件未満」の秘匿が増えるため、施設粒度は件数の大きい指標(病床数・機能別病床・救急/手術総数・退院患者数)で有効。受療動向は「住所地=圏域 → 受診先=施設点」が現実的です。

8まとめ(役割分担)

主体やること
分析側(千葉大)個票を集計・秘匿し、①カタログ(型・軸・説明)+②集計値+③軸マスタを整える。指標を増やすときはカタログに1行足す。
ツールカタログを読み、選んだ指標の型・軸から使える見せ方を機械的に提示。値を地図・グラフ・表で描画し、出力する。中身の良否は判断しない。
県 各課・会議指標を選んで分布を把握し、解釈・政策判断を行う(所見メモ等に記入)。
この設計だと「できる組み合わせ/できない組み合わせ」はデータ(カタログ)が決めるため、画面の作り込みと分析データの整備を分離できます。分析側は“型・軸・説明・値”を整えることに集中すればよく、職員は不可能な操作に触れずに済みます。