Rで使う正規表現の色々 更新日:2024年12月15日 公開日:2024年8月15日 R Rでよく使う正規表現のパターンを、カテゴリー別に整理してみた。 Rで使用する正規表現いろいろ 文字の検索・位置指定に関するパターン パターン 説明 例 ^ 文字列の先頭を指定 ^Hello は "Hello World" […] 続きを読む
【Rデータ整理】文字列や数値の抽出:str_extract/str_extract_all/readr::parse_number 更新日:2024年12月23日 公開日:2023年12月15日 R 文字列の抽出には、stringrパッケージのstr_extract()やstr_extract_all()を使う。 また、数値の抽出には、readrパッケージのparse_number()も使える。 3つの関数のざっくり […] 続きを読む
【Rデータ整理】マッチするかどうかを返す:str_detect/grepl 更新日:2024年12月15日 公開日:2023年12月15日 R 特定の条件にマッチするかどうかを判定する関数には、str_detect() と grepl()を使うことができる。 str_detect() は stringr パッケージの関数で、grepl() はRの標準パッケージ( […] 続きを読む
【Rデータ整理】文字列のマッチする箇所の数を返す:str_count 更新日:2024年12月15日 公開日:2023年12月15日 R str_count(string, pattern) は、文字列内に正規表現pattern がいくつ出現するかをカウントする関数。 この関数は、stringr パッケージに含まれているので、まずは、library(str […] 続きを読む
【Rデータ整理】文字列を繰り返し複製する:str_dup/strrep 更新日:2024年12月15日 公開日:2023年12月15日 R 文字列を繰り返し複製する時には、str_dup() と strrep()などを使う。 str_dup():stringrパッケージの関数で、ベクトル化が簡単、使い方が直感的。 strrep():base R (標準関数) […] 続きを読む
【Rデータ整理】文字列のフォーマットを変更する:str_to_upper/str_to_lower/str_to_title/str_to_sentence 更新日:2024年12月16日 公開日:2023年12月15日 R 文字列のフォーマットを変更する時には、stringrパッケージに含まれているstr_to_upper(), str_to_lower(), str_to_title(), str_to_sentence()等を使う。 こ […] 続きを読む
【Rデータ整理】文字列vector要素を繋げて1つの文字列にする:str_flatten/paste0 更新日:2024年12月15日 公開日:2023年12月14日 R あるvectorの要素を繋げて一つの文字列にしたい場合、str_flatten()やpaste0()を使う。 どちらも文字列を結合(連結)するための関数だけれど、使い方や挙動にいくつかの違いがある。 str_flatte […] 続きを読む
【Rデータ整理】文字列の抽出や置換:str_sub/substr 更新日:2024年12月15日 公開日:2023年12月14日 R 文字列を部分的に抽出したり、置換したりするときには、R標準パッケージ(base)のsubstr()、もしくは stringrパッケージならstr_sub()を使う。 substr()とstr_sub()の違い subst […] 続きを読む
【Rデータ整理】文字列の長さを数える:str_length/(nchar) 更新日:2024年12月15日 公開日:2023年12月14日 R 文字列の中の文字数をカウントする方法としては、R標準パッケージ(base)に含まれるnchar()関数や、stringrパッケージのstr_length()関数等を使う。 基本的には、str_length()関数を使うこ […] 続きを読む
【Rデータ整理】データフレームの結合:dplyr::join 更新日:2024年12月14日 公開日:2023年12月14日 R 2つのデータフレームを結合するときには、dplyr::join()関数を使う。 join()関数は、dplyrパッケージの関数なので、まずはdplyrパッケージをインストールして読み込む必要がある。 install.pa […] 続きを読む
【Rデータ整理】rownames()の使い方色々 更新日:2024年12月14日 公開日:2023年12月14日 R Rのrownames()関数は、データフレームや行列(matrix)の行名(row names)を取得または設定するための関数。 基本的な使い方 行名を取得する rownames(データフレームまたは行列) 例: df […] 続きを読む
R標準パッケージ(base)とstringrパッケージはどちらが速いのか? 更新日:2024年12月14日 公開日:2023年12月14日 R 前回、R標準パッケージ(base)とstringrパッケージの比較をしてみて、「処理速度は、場合によってはbase、場合によってはstringrの方が速い」ということがわかった。 で、具体的にどのときにbase、どのとき […] 続きを読む
【Rデータ整理】列の抽出:[ ]を使う 更新日:2024年10月20日 公開日:2023年10月20日 R [ ] (square brackets)を使って、各要素にアクセスする方法は、下記参照。 この基本を使って、データフレームの列を抽出する。 今回は、下記データ(Data)を使用。 > print(Data) ID Co […] 続きを読む
【Rデータ整理】行や列の抽出:[]を使う 更新日:2024年10月20日 公開日:2023年10月20日 R [ ] (square brackets)を使って、各要素にアクセスする方法は、下記参照。 この基本を使って、データフレームの行や列を抽出する。 今回は、下記データ(Data)を使用。 > print(Data) ID […] 続きを読む
【Rデータ整理】R標準パッケージ(base)とstringrパッケージの比較 更新日:2024年12月14日 公開日:2023年8月14日 R Rで文字列操作を行う際に、標準パッケージ(baseパッケージ)やstringrパッケージを使っていることが多いと思う。 私の周囲にはstringrを好む人が多いけれども、実際、どちらを使った方がよいのか、調べてみた。 R […] 続きを読む
【Rデータ整理】1列目を行名に指定する:rownames 更新日:2024年12月14日 公開日:2022年12月14日 R 例えば、下記データフレームを作る。 # データフレームを作成 df <- data.frame( x = c("A", "B", "C"), y = c(1, 3, 5), z = c("Apple", "Bana […] 続きを読む
【Rデータ整理】列の抽出/削除/並び替え:select 更新日:2024年10月20日 公開日:2022年10月20日 R 例えば下記データ(Data_c)がある。 X ID Cohort Sex Age ADNC 1 1 232493 LBD Male 83 Low 2 2 326342 AD Male 78 High 3 3 326322 […] 続きを読む
【Rデータ整理】データの中身(構造)を確認する:str 更新日:2024年10月20日 公開日:2022年10月20日 R データをインポートしたらまず始めにする作業。 今回は、同じ階層にある"my_Data"というエクセルファイルをインポート library(readxl) Data_C <- readxl::read_xlsx(". […] 続きを読む
【Rデータ整理】1行目を列名に指定する:colnames 更新日:2024年12月14日 公開日:2022年10月12日 R 下記のようなデータが得られて、 1行目の値を列名に宛てがいたい場合。 colnames() で列名を1行目に指定した後、1行目を削除する。 colnames(df7) <- df7[1,] df7 <- df […] 続きを読む
【Rデータ整理】行の並び替え:arrange/order/sort 更新日:2024年12月15日 公開日:2022年10月7日 R 下記のようなデータフレーム(df)があり、行を昇順or降順で並べ替えたい時。 私が使いやすいと思う順で arrange() , order , sort() の使い方を書き留めておく。 dplyr::arrange() […] 続きを読む
【Rデータ整理】データフレームの行と列を入れ替える:t/as.data.frame 更新日:2024年10月19日 公開日:2022年10月4日 R 下記のようなデータがあって、行と列を入れ替えたい場合。 t(データ) でOK。 df6 <- t(df5) ただこれだと行列で返ってくるので、 > class(df6) [1] "matrix" "array […] 続きを読む
【Rデータ整理】重複する列を削除:distinct 更新日:2024年10月19日 公開日:2022年9月30日 R 下記のようなデータがあって、 "Deceased" が "True" と "False" と入力されている症例がそれぞれどれくらいずつあるか count(group_by()) で求めると、 Dat1 <- rea […] 続きを読む
【Rデータ整理】特定の条件を満たす行数をカウント 更新日:2023年5月11日 公開日:2022年9月26日 R 例えば、下記のようなデータがあって、 "Deceased" が "True" と "False" と入力されている症例がそれぞれどれくらいずつあるか知りたい時。 count(group_by()) で求める。 Dat1 […] 続きを読む
【Rデータ整理】クロス集計表 更新日:2023年5月11日 公開日:2022年7月4日 R カテゴリデータの集計表⇔データフレームの切り替え。 クロス集計表 例えば、 運動あり 運動なし 認知症あり 10 15 認知症なし 20 5 のようなデータの集計表を作る時。 基本は行列で作る。 行列(matrix)で作 […] 続きを読む
【Rデータ整理】tidy data に変換する 更新日:2023年5月11日 公開日:2022年6月18日 R ↑ これは見やすいけど、Rで計算する場合は tidy data じゃないのでちょっと困る。 これを、Rに取り込んで、tidy data に変換する方法。 tidy data と messy data については、多くのサ […] 続きを読む
【Rデータ整理】行方向の平均値を出して任意の列に適応 更新日:2023年5月11日 公開日:2022年5月25日 R 列A、列B、列C...の各行毎に平均値を出して、それぞれ新しい列に結果を追加する方法3つ。 個人の練習も兼ねて前後の工程も記載しているので、あしからず。 事前準備 データの取り込み 人からもらった、とあるデータを取り込む […] 続きを読む
【Rデータ整理】欠損値(NA)の取り扱い⑤:他のデータ値から計算で求める 更新日:2023年5月11日 公開日:2022年5月3日 R 前回の続き。 下記データフレーム(Dat)で、"Expenses" の値を補完しようと思うけど、 17行目の "Expenses" は、両隣の "Revenue" と "Profit" から計算できる。 この場合は、 " […] 続きを読む
【Rデータ整理】欠損値(NA)の取り扱い④:群の中央値で補完する 更新日:2023年5月11日 公開日:2022年5月2日 R NAの取り扱いシリーズ第4段。 今回は、他のデータから推測して補完する方法。 よく使われるのは、中央値(median)で補完する方法。 場合によっては平均値(mean)でもいいけど、中央値の方が外れ値の影響 […] 続きを読む
【Rデータ整理】欠損値(NA)の取り扱い③:他のデータから予測し補完する 更新日:2023年5月11日 公開日:2022年5月1日 R NAの取り扱いシリーズ第3段。 今回は、他のデータから予測できる場合にその情報を使って補完する方法。 他のデータを使って補完 例えば下記のようなデータフレームがあった場合、 "State" が<NA& […] 続きを読む
【Rデータ整理】欠損値(NA)の取り扱い②:欠損値を含むレコードを削除する 更新日:2024年9月22日 公開日:2022年4月27日 R NAの取り扱いシリーズ第2段。 今回は、NAがある行を取り除いて解析する方法。 NAのある行を抽出 まずは、前回のおさらい。 全体でNAがある行を抽出する方法。 Dat[!complete.cases(Dat),] で、 […] 続きを読む
【Rデータ整理】NAの取り扱い方①:NA/NA以外のデータの抽出方法 更新日:2024年9月22日 公開日:2022年4月23日 R データ整理をしていると、データが抜けていて欠損値になっている事がある。 この時の対処方法いろいろ。 前処理:空欄を NA に置き換えてデータをインポートする 例えば、下記のようなデータがあって、いくつか空欄がある。 これ […] 続きを読む
【Rデータ整理】列の順番を並び替える:select 更新日:2024年10月19日 公開日:2022年1月19日 R データフレームの列の順番を並び替える時は、列選択で使用する dplyr::select を使う。 例えば、下記の様なデータフレーム(データ名: Dat1)があって、 これを左から 「Sex -> Genotype […] 続きを読む
【Rデータ整理】ちょっとした集計:dplyr::summarise 更新日:2022年5月22日 公開日:2022年1月11日 R データフレーム内の合計や平均値などを求める時、Rでは「aggregate関数」が用意されているけど、比較的作業時間がかかるため、「dplyr::summarise」の方が良さげ。 ちょっとした集計:dplyr::summ […] 続きを読む
【Rデータ整理】文字を切り出して新しい列に追加する:mutate/substr/str_sub 更新日:2024年10月19日 公開日:2022年1月7日 R 文字列から一部だけ切り出して、新しい列を作りたい時。 列の追加は dplyrパッケージ: mutate 文字の切り出しは R標準パッケージ: substr or substring stringrパッケージ: st […] 続きを読む
【Rデータ整理】列の追加:mutate 更新日:2024年10月19日 公開日:2021年11月26日 R Rで列を追加する時は、 dplyr::mutate() を使っている。 mutate(列A+列B) のように計算式の結果を入れられるので便利だけど、文字列を入れる時はこんな感じ ▼ 例:Data というデータフレーム内で […] 続きを読む
【Rデータ整理】文字列の追加:mutate/transform 更新日:2024年10月19日 公開日:2021年10月29日 R データフレームに列を追加する時の方法2つ。 dplyr::mutate() 普段は dplyr パッケージの dplyr::mutate() を使っている。 文字列は " " で括って追加する。 mutate(列名 = […] 続きを読む