2017-10-20 7 views
0

マトリックス内の個々のセルを参照する構文は何ですか?私は関数を作成するためにR data.frameの個々のセルを参照したいと思います。例えば、私は値 関数を作成するdata.frameまたはmatrixの参照セル

3 4 
5 6 

と2x2の行列を持っていると言うと私は ((3 + 4)/(3 + 4 + 5))を行います関数を作成します。私はそれを関数としてやって、成功しないで新しい変数を作成しようとしました。

Subj_2_block_4a$HRLR0 <- c(2,2)+c(2,4)は、私に新しい変数の下で4つの観察を与えます。

Subj_2_block_4a$HRLR0 <- ((2:2 + 2:4)/(2:2 + 2:4 + 2:1 +2:3))は、これらをセルではなく行列の参照として使用します。

Subj_2_block_4a$HRLR0 <- nrow2:ncol2 + nrow2:ncol4;まったく動作しません。

私は、さまざまな行列から列や行を追加するための多くのリソースを見つけましたが、1つの行列内のセルを使用して数学関数を書く方法について明確な説明は見つかりませんでした。あなたが行Xの要素を参照したい場合は

+0

だけを見て..あなたに特定のセルへの参照を作るために多くの方法を表示するために私の答えを更新しました – Thai

答えて

1

列Y、

あなたが行列を構築したい場合は、あなたが

mtrx <- matrix(c(3,4,5,6), # the data elements 
       nrow=2,    # number of rows 
       ncol=2,    # number of columns 
       byrow = TRUE)  # will format in the way you want 

#Take a look in your matrix by just doing this: 

mtrx      # print your matrix 
>  [,1] [,2] 
> [1,] 3 4  
> [2,] 5 6 

そしてfinaly行列の要素への参照を作りますmtrx [X、Y]でアクセスできます。あなたのケースでは:あなたが行全体または列全体を見たい場合は

# Your second row, second col: 

mtrx[2, 2]  # element at 2nd row, 2rd column 
> [1] 6 

、それはあまりにも

mtrx[2, ] # entire second row 
mtrx [ ,2] # entire second column 

可能ですし、また、一度に複数の要素への参照を行うことができます。 ..データフレーム におけるCELを参照してその

#Creating a 3x3 matrix 
Lmtrx<-matrix(c(3,4,5,6,7,8,1,2,6),ncol = 3,nrow = 3, byrow = TRUE) 
Lmtrx # prit to take a look 

#Making reference to two columns at once: 1rst and 3rd 
Lmtrx[ ,c(1,3)] 

ためのより大きな行列を作成でき

は非常に簡単であるだけでなく、代わりに行列のdata.frameのセルへの参照を作成するには:

df$col1[1] # First row in first column 
df[1,1] # First row in first column, another way to get it 
df$col1 # entire first column 
df[ ,1] # entire first column, another way to get it 
df[1, ] # entire first row 

関連する問題