#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.
▾ Quoted text (1 line)
mat[cwaves[4], cwaves[10]]
Error: subscript out of bounds
▾ Quoted text (1 line)
mat["cwaves[4]", "cwaves[10]"]
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.
▾ Quoted text (3 lines)
a <- cwaves[4]
b <- cwaves[10]
mat[a,b]
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.