基本コマンドを工夫すればほとんどのことが可能なRですが、できればパッケージを利用してサクッと処理したいものです。ちょっとしたデータの操作に便利なパッケージの紹介です。
欠損値に対して関数を処理する「applyna」コマンドやfactor classのラベルをnumeric classに変換する「fac2num」コマンドは意外と便利かもしれません。
パッケージバージョンは0.1。実行コマンドはR version 4.2.2で確認しています。
パッケージのインストール
下記、コマンドを実行してください。
#パッケージのインストール install.packages("devtools") devtools::install_github("patr1ckm/patr1ckm")
実行コマンド
詳細はコメント、パッケージのヘルプを確認してください。
#パッケージの読み込み library("patr1ckm") ###データ例の作成##### n <- 30 TestData <- data.frame(Group = sample(paste0("Group", 1:5), n, replace = TRUE), Data1 = rnorm(n), Data2 = rnorm(n) + rnorm(n) + rnorm(n), Data3 = sample(c(0:1, NA), n, replace = TRUE), Data4 = sample(LETTERS[1:26], n, replace = TRUE)) ####### #処理方向を指定:marオプション;行:1,列:2 #関数を指定:FUNオプション applyna(TestData, mar = 2, FUN = sum) Group Data1 Data2 Data3 Data4 0 0 0 11 0 #factor classをnumeric classに変換:fac2numコマンド #factor classの例 x <- factor(c(3, 4, 9, 4, 9)) sum(x) Summary.factor(c(1L, 2L, 3L, 2L, 3L), na.rm = FALSE) でエラー: ‘sum’ は因子に対しては無意味です #as.numericで変換 #数値になりません as.numeric(x) [1] 1 2 3 2 3 #fac2numコマンド fac2num(x) [1] 3 4 9 4 9 #データ内容を行列指定して表示:hhコマンド #データはlist,matrix,data.frameが対応 hh(TestData, nrows = 10, ncols = 3) Group Data1 Data2 1 Group5 0.9076054 -0.4986835 2 Group1 -1.0633429 0.9135707 3 Group3 0.1899058 -3.2955295 4 Group4 -0.5413327 -0.5238083 5 Group3 -0.6785925 0.9935114 6 Group2 0.4760690 -1.8305393 7 Group2 -0.4870935 1.0061167 8 Group2 -1.4819214 -0.5239308 9 Group1 -0.4824324 -2.9419682 10 Group1 0.3007636 3.8981577
少しでも、あなたの解析が楽になりますように!!