見出し画像

【2-1】Rによる代表的なデータ加工について

データ分析は前処理までが大変

一般的にデータ分析や統計をかける場合、IT化が進んでいる施設では分析も行いやすいですが、そうでない施設の場合は分析にかけられる形までにすることに多大な労力を割きます。前処理が8割と言われることもあります。

グラフを作ったり統計をかけるための前処理はExcelのコピペのみでは手間がかかりますし間違えた時の修正も大変です(ExcelでもPowerQueryやPowerBIのようなツールを使いこなせば別)。

第1章ではRの基本的な操作について解説しました。
第2章ではデータの加工、特にExcelやcsvファイルからデータを読み込み表を加工する方法を紹介します。第2章で使うのは主にtidyverseパッケージの内容になります。

必要な列を抜き取る、列を並び替える

表の列を抜き出すのはdplyr::select()を使います。さらに"test"が含まれる列数値の列など便利な抜き出し方も紹介します。

条件に合う行を抽出する

条件に合う行を抽出するのはdplyr::filter()を使います。
第1章で紹介した条件式を使うことになります。


新しい列を作る、既存の列を更新する

他にも発症日-入院日で計算した入院までの期間という列を新たに作ることもできる

ここではdplyr::mutate()を使います。上記のselect, filter, mutateだけでもかなりのことができるようになります。

列名を変更する

Excelで読み込んだ列名が使いにくい場合は列名の変更が必要です。dplyr::rename()や他の方法も紹介します。

2つのファイルを列名が合うように縦につなげる

列順がバラバラでも同じ列名ならつなげることができる

dplyr::bind_rows()で複数のタブやフォルダ内にある複数の似た形式のファイルをつなげることができます。Excelでコピペだと列順がピッタリあっていないと地獄を見ますが、Rであれば列名が同じであれば列順は関係ないのが魅力です。

2つのファイルを条件が合うように横に繋げる

同じidと入院日の行どうしを繋げることもできる
順番はバラバラでも問題ない

Excelだとvlookup, xlookup関数やPowerQueryの機能に似ています。キーになる列(idなど)を頼りに複数のファイルをつなげることができます。これにはdplyr::left_join()などの関数があります。

 複数の組み合わせ

組み合わせることで自由なデータ加工ができる

longデータとwideデータの変換

Rで集計したりグラフを作るときはlongデータの方が都合が良いことが多い

Excelだとなじみのない言葉ですが、longデータとwideデータを使い分けると集計やグラフがスムーズに行えます。これにはtidyr::pivot_longerやtidyr::pivot_wider()を使います。

集計する

グループごとの平均や標準偏差をまとめて計算することができます。これにはdpylr::group_by()やdplyr::summarize()を使います。

まとめ

特別な手法を使わなくても、この章の内容だけでもかなりの時短になります。
次回より1つずつ紹介していきます。


この記事が気に入ったらサポートをしてみませんか?