Rでコマンド:matrix classで思いつくコマンド


投稿日: Rの解析に役に立つ記事

matrix classで思いつくコマンドの紹介です。ただそれだけです。

実行コマンドはwindows 7およびOS X 10.11.2のR version 3.2.3で確認しています。


実行コマンド

詳細はコメント、各パッケージのヘルプを確認してください。

#matrixの作成:matrixコマンド
TestMatrix <- matrix(1:100, nrow = 10, ncol = 10) #matirix classであるか:is.matrixコマンド is.matrix(TestMatrix) [1] TRUE is.matrix(2) [1] FALSE #データが0のmatrixを作成:mat.or.vecコマンド mat.or.vec(10, 10) [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] 0 0 0 0 0 0 0 0 0 0 [2,] 0 0 0 0 0 0 0 0 0 0 [3,] 0 0 0 0 0 0 0 0 0 0 [4,] 0 0 0 0 0 0 0 0 0 0 [5,] 0 0 0 0 0 0 0 0 0 0 [6,] 0 0 0 0 0 0 0 0 0 0 [7,] 0 0 0 0 0 0 0 0 0 0 [9,] 0 0 0 0 0 0 0 0 0 0 [10,] 0 0 0 0 0 0 0 0 0 0 #行列番号でmatrixを作成:col,rowコマンド col(TestMatrix) [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] 1 2 3 4 5 6 7 8 9 10 [2,] 1 2 3 4 5 6 7 8 9 10 [3,] 1 2 3 4 5 6 7 8 9 10 [4,] 1 2 3 4 5 6 7 8 9 10 [5,] 1 2 3 4 5 6 7 8 9 10 [6,] 1 2 3 4 5 6 7 8 9 10 [7,] 1 2 3 4 5 6 7 8 9 10 [8,] 1 2 3 4 5 6 7 8 9 10 [9,] 1 2 3 4 5 6 7 8 9 10 [10,] 1 2 3 4 5 6 7 8 9 10 #matrixに行列名を付与:structureコマンド structure(TestMatrix, dimnames = list(paste0("R", 1:10), paste0("C", 1:10))) C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 R1 1 11 21 31 41 51 61 71 81 91 R2 2 12 22 32 42 52 62 72 82 92 R3 3 13 23 33 43 53 63 73 83 93 R4 4 14 24 34 44 54 64 74 84 94 R5 5 15 25 35 45 55 65 75 85 95 R6 6 16 26 36 46 56 66 76 86 96 R7 7 17 27 37 47 57 67 77 87 97 R8 8 18 28 38 48 58 68 78 88 98 R9 9 19 29 39 49 59 69 79 89 99 R10 10 20 30 40 50 60 70 80 90 100 #データの要約:summaryコマンド summary(TestMatrix[, 1:3]) V1 V2 V3 Min. : 1.00 Min. :11.00 Min. :21.00 1st Qu.: 3.25 1st Qu.:13.25 1st Qu.:23.25 Median : 5.50 Median :15.50 Median :25.50 Mean : 5.50 Mean :15.50 Mean :25.50 3rd Qu.: 7.75 3rd Qu.:17.75 3rd Qu.:27.75 Max. :10.00 Max. :20.00 Max. :30.00 #行列数を取得:dimコマンド dim(TestMatrix) [1] 10 10 #行列を入れ替える:tコマンド t(TestMatrix) [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] 1 2 3 4 5 6 7 8 9 10 [2,] 11 12 13 14 15 16 17 18 19 20 [3,] 21 22 23 24 25 26 27 28 29 30 [4,] 31 32 33 34 35 36 37 38 39 40 [5,] 41 42 43 44 45 46 47 48 49 50 [6,] 51 52 53 54 55 56 57 58 59 60 [7,] 61 62 63 64 65 66 67 68 69 70 [8,] 71 72 73 74 75 76 77 78 79 80 [9,] 81 82 83 84 85 86 87 88 89 90 [10,] 91 92 93 94 95 96 97 98 99 100 #データを入れ替える TestMatrix[5, ] <- TestMatrix[1, ] TestMatrix[, 4] <- TestMatrix[, 9] #確認 TestMatrix     [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] 1 11 21 81 41 51 61 71 81 91 [2,] 2 12 22 82 42 52 62 72 82 92 [3,] 3 13 23 83 43 53 63 73 83 93 [4,] 4 14 24 84 44 54 64 74 84 94 [5,] 1 11 21 81 41 51 61 71 81 91 [6,] 6 16 26 86 46 56 66 76 86 96 [7,] 7 17 27 87 47 57 67 77 87 97 [8,] 8 18 28 88 48 58 68 78 88 98 [9,] 9 19 29 89 49 59 69 79 89 99 [10,] 10 20 30 90 50 60 70 80 90 100 #重複データを一意化:uniqueコマンド #向きの設定:MARGINオプション;1:行,2:列 unique(TestMatrix, MARGIN = 2) [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [1,] 1 11 21 81 41 51 61 71 91 [2,] 2 12 22 82 42 52 62 72 92 [3,] 3 13 23 83 43 53 63 73 93 [4,] 4 14 24 84 44 54 64 74 94 [5,] 1 11 21 81 41 51 61 71 91 [6,] 6 16 26 86 46 56 66 76 96 [7,] 7 17 27 87 47 57 67 77 97 [8,] 8 18 28 88 48 58 68 78 98 [9,] 9 19 29 89 49 59 69 79 99 [10,] 10 20 30 90 50 60 70 80 100 #データに周辺和を加える:addmarginsコマンド addmargins(TestMatrix) Sum 1 11 21 81 41 51 61 71 81 91 510 2 12 22 82 42 52 62 72 82 92 520 3 13 23 83 43 53 63 73 83 93 530 4 14 24 84 44 54 64 74 84 94 540 1 11 21 81 41 51 61 71 81 91 510 6 16 26 86 46 56 66 76 86 96 560 7 17 27 87 47 57 67 77 87 97 570 8 18 28 88 48 58 68 78 88 98 580 9 19 29 89 49 59 69 79 89 99 590 10 20 30 90 50 60 70 80 90 100 600 Sum 51 151 251 851 451 551 651 751 851 951 5510 #一部を表示:head,tailコマンド head(TestMatrix, 3) [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] 1 11 21 81 41 51 61 71 81 91 [2,] 2 12 22 82 42 52 62 72 82 92 [3,] 3 13 23 83 43 53 63 73 83 931 [/code]


少しでも、あなたのウェブや実験の解析が楽になりますように!!

スポンサードリンク

関連コンテンツ


スポンサードリンク