政府統計の総合窓口、e-Statのサイトにアクセスしてみたら、「定期健康診断結果報告」という統計が新着でありました。早速アクセスしてみました。
職場の定期健康診断結果の報告を集計したもののようです。私事になりますが、最近、健康診断をしましたので興味をもちました。ファイルにアクセスしてみます。
年次別、業種別、都道府県別の3つがあるようです。業種別のファイルにアクセスしてみました。
業種ごとの健康診断受診者数と所見のあった人数が記載されています。所見のあった、というのは血糖値が高いですよ、とか血圧が高いですよ、とかですね。つまり所見がなければ問題なし、所見があれば再検診とか気を付けましょう、ということだと思います。
データをR言語に読込んで分析しましょう。
まず、データのファイルをR言語に読込ませやすいように、このように加工しました。
大分類という列と一事業所当人数という列を作り、もとのデータファイルにあった「小計」の行を削除しました。小計はR言語で算出できると思います。
read.csv関数でデータを読込み、head関数ではじめの6行を表示します。
では、summary関数を使って、最小値、最大値、第1四分位、中央値、平均値、第3四分位を表示しましょう。大分類(1列目)と業種(2列目)は必要ないので、kenshin[ , c(-1,-2)]として1列目と2列目を削除した状態でsummary関数を適用します。
サマリー関数では、データの個数、標準偏差、合計が表示されないので、apply関数を使ってそれぞれの統計値を算出します。データの個数は、length関数です。
41の業種があることがわかります。lengthの前に , 2 , としているのは、lenght関数を列に適用しなさい、という意味です。1だと行に対して適用することになるので、
という結果になります。
標準偏差を出しましょう。sd関数です。
round関数を使って、小数点以下2桁までの表示にしています。
合計値を出します。
受信者数の合計は、1359万7456人です。所見人数の合計は735万3945人です。
全体の有所見率は、54.1%です。半数以上が所見有りということですね。