Skip to content
Prev 308009 / 398502 Next

Referring to matrix elements by name, iteratively

AHJ
#Here is a vector of IDs
[1]    86    90   185   196   197   209   210   215   216   217   218 

#Here is a matrix. The rows and columns correspond to the IDs in cwaves, and
the matrix is populated with a coefficient
86 90 185 196 209     210 215      216      217      218
86    0  0   0   0   0 0.00000   0 0.000000 0.000000 0.000000
90    0  0   0   0   0 0.00000   0 0.000000 0.000000 0.000000
185   0  0   0   0   0 0.00000   0 0.062500 0.000000 0.015625
196   0  0   0   0   0 0.06250   0 0.000000 0.031250 0.000000
197   0  0   0   0   0 0.06250   0 0.000000 0.000000 0.000000
209   0  0   0   0   0 0.00000   0 0.000000 0.062500 0.000000
210   0  0   0   0   0 0.00000   0 0.000000 0.062500 0.000000
215   0  0   0   0   0 0.00000   0 0.000000 0.031250 0.000000
216   0  0   0   0   0 0.00000   0 0.000000 0.000000 0.000000
217   0  0   0   0   0 0.03125   0 0.031250 0.000000 0.000000
218   0  0   0   0   0 0.00000   0 0.000000 0.000000 0.031250
1162  0  0   0   0   0 0.00000   0 0.003906 0.007812 0.015625
1323  0  0   0   0   0 0.00000   0 0.007812 0.007812 0.000000
1338  0  0   0   0   0 0.00000   0 0.000000 0.000000 0.003906
1709  0  0   0   0   0 0.00000   0 0.000000 0.000000 0.000000
structure(c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.0625, 
0.0625, 0, 0, 0, 0, 0.03125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.0625, 0, 0, 0, 0, 0, 0, 0.03125, 
0, 0.003906, 0.007812, 0, 0, 0, 0, 0, 0.03125, 0, 0.0625, 0.0625, 
0.03125, 0, 0, 0, 0.007812, 0.007812, 0, 0, 0, 0, 0.015625, 0, 
0, 0, 0, 0, 0, 0, 0.03125, 0.015625, 0, 0.003906, 0), .Dim = c(15L, 
10L), .Dimnames = list(c("86", "90", "185", "196", "197", "209", 
"210", "215", "216", "217", "218", "1162", "1323", "1338", "1709"
), c("86", "90", "185", "196", "209", "210", "215", "216", "217", 
"218")))

#I know I can refer to element [4,6] in two ways, with the index, or with
the name
[1] 0.0625
[1] 0.0625

But I want to use cwaves[4] and cwaves[10] to get the name, because this is
part of an iteration through thousands of IDs.

This didn't work, of course, because it tries to pull out mat[196,217] which
doesn't exist.
Error: subscript out of bounds
Error: subscript out of bounds

I also tried to put the name in a variable to then use as the index, and the
same thing happens, of course.
Error: subscript out of bounds
Error: subscript out of bounds

Is it possible to do this? I hope the way I language it makes sense. 

Thank you :)









--
View this message in context: http://r.789695.n4.nabble.com/Referring-to-matrix-elements-by-name-iteratively-tp4646264.html
Sent from the R help mailing list archive at Nabble.com.