これまで、表記ゆれ、欠損値、外れ値、カテゴリ変数と、
「列(項目)の中身」をどう整えるかについて見てきました。
今回は少し視点を切り替えて、
「表全体の構造」そのものについて取り上げます。
基本は「1行=1症例」
EZR/Rにデータを読み込ませる際、
最も基本となるのがシンプルな構造です。
原則として、
「1行につき患者様1人分」「1列につき1つの項目」
という表を作ります。
これがすべての土台になります。
前回までに扱ってきた「表記ゆれ」も「欠損値」も
「カテゴリ変数の設計」も、
この土台となる構造が整っていることが前提になっています。
逆に言えば、構造そのものが崩れていると、
どれだけ列の中身を丁寧に整えても、解析は正しく動きません。
複数回測定するデータは、「縦持ち」にする
「術前・術後・1ヶ月後」のように、
1人の患者さんから複数回データを取る場合や、
1人から複数箇所のデータを取る場合は、少し形が変わります。
1行に1つの測定結果が入る形式
(同じIDが複数行に並ぶ、縦長のデータ)にするのが基本です。
この「1行=1つの観測」という考え方は、
統計ソフトウェアの世界で整然データ(tidy data)と
呼ばれる設計思想にあたります。
2014年に統計学者ハドリー・ウィッカムが提唱したこの考え方は、
今やRをはじめとする多くの解析環境で標準的な前提になっています。
「なんとなく見やすい表」ではなく、「ソフトウェアが正しく読み取れる表」を作る、という発想の転換がここにあります。
避けたいレイアウト
逆に、次のようなレイアウトは解析を壊す原因になります。
・セルの結合(タイトル行や見出しの結合)
・表の末尾に平均・合計などの「集計行」を入れる
特に後者は要注意です。
Rはこれを「もう1人分のデータ」として読み込んでしまい、
平均値や標準偏差の計算そのものを狂わせてしまいます。
見た目には親切なようで、実は解析にとって最も厄介なノイズです。
まとめ
・「1行=1症例、1列=1項目」が、すべての解析の土台になる
・複数回・複数箇所のデータは、同じIDが複数行に並ぶ「縦持ち」の形式にする
・セルの結合や集計行の追加は、解析を壊す典型的な原因になる
次回からは、
この土台の上に立つ「解析の考え方」そのものに踏み込んでいきます。
データを探る姿勢(EDA)と、仮説を確かめる姿勢(CDA)
この2つがどう関係しているのか、改めて整理していきます。