array classの操作が便利になるパッケージの紹介です。配列をヒートマップで表現するコマンドも収録されています。データの特徴を把握するのに便利です。
パッケージバージョンは0.9.3。実行コマンドはwindows 7およびOS X 10.11.2のR version 3.2.4で確認しています。
パッケージのインストール
下記コマンドを実行してください。
#パッケージのインストール install.packages("gapfill")
実行コマンドの紹介
詳細はコマンド内を確認ください。
#パッケージの読み込み
library("gapfill")
###データ例の作成#####
TestData <- array(data = 1:10, dim = c(2, 2, 2, 2))
, , 1, 1
[,1] [,2]
[1,] 1 3
[2,] 2 4
, , 2, 1
[,1] [,2]
[1,] 5 7
[2,] 6 8
, , 1, 2
[,1] [,2]
[1,] 9 1
[2,] 10 2
, , 2, 2
[,1] [,2]
[1,] 3 5
[2,] 4 6
########
#配列を行列に変換:Array2Matrixコマンド
Array2Matrix(a = TestData)
[,1] [,2] [,3] [,4]
[1,] 1 5 9 3
[2,] 2 6 10 4
[3,] 3 7 1 5
[4,] 4 8 2 6
#配列からデータを個別に抽出:ArrayAroundコマンド
#データを取り出す位置を指定:mpオプション;c(列,行,次元,次元)
#データを取り出す範囲を指定:sizeオプション;c(列,行,次元,次元)
#例はTestData[1:2, 1, 1:2, 2]と同じ
ArrayAround(data = TestData, mp = c(1, 1, 2, 2), size = c(1, 0, 1, 0))
, , 1, 1
[,1]
[1,] 9
[2,] 10
, , 2, 1
[,1]
[1,] 3
[2,] 4
attr(,"mp")
[1] 1 1 2 1
#配列をプロット:Imageコマンド
#色の設定:colオプション
#欠損値の色:na.valueオプション
Image(TestData, col = fields::tim.colors(1000), na.value = "black")
#指定したデータの範囲以外を置換:Gapfillコマンド
#データの範囲を指定:clipRangeオプション
GetGap <- Gapfill(TestData, clipRange = c(3, 10))
$fill
, , 1, 1
[,1] [,2]
[1,] 3 3
[2,] 3 4
, , 2, 1
[,1] [,2]
[1,] 5 7
[2,] 6 8
, , 1, 2
[,1] [,2]
[1,] 9 3
[2,] 10 3
, , 2, 2
[,1] [,2]
[1,] 3 5
[2,] 4 6
$mps
integer(0)
$time
$time$start
[1] "2016-05-05 22:56:12 WIT"
$time$end
[1] "2016-05-05 22:56:12 WIT"
$time$elapsedMins
Time difference of 1.17143e-05 mins
$time$elapsedSecsPerNA
Time difference of Inf secs
$call
Gapfill(data = TestData, clipRange = c(3, 10))
#プロット
Image(GetGap$fill)
[/code]
出力例
少しでも、あなたのウェブや実験の解析が楽になりますように!!