Can boot return matrix?
You're certainly very close. I observe that you have interchanged
positions for the function which calculates the statistic (f2) and
the number of replicates (R) in the third line of your example below.
Swap positions, or assign arguments by name instead of by position,
and I would expect this example to work. Probably, you've spotted
this already. Details are in help("boot").
And, a matrix is also a vector, so perhaps f1() can return a matrix
without causing any problems. If not, use
f2 <- function(nxm.matrix, i) as.vector(f1(nxm.matrix[i, ]))
The confidence intervals will require a separate call to boot.ci()
for each entry in the matrix, changing the value of boot.ci(index= )
each time.
- tom blackwell - u michigan medical school - ann arbor -
On Wed, 2 Apr 2003, Katalin Csillery wrote:
Dear All,
I have a function which takes a n x m matrix as an argument and returns
an n x n matrix. I want to take bootstrap samples form the input matrix
in the way as each row represent a multivariate observation, so each
bootstrap sample would be an n x m matrix, and on each sample I want to
calculate the n x n matrix.
f1 <- function(nxm.matrix){...; return(nxn.matrix)}
f2 <- function(nxm.matrix, i) f1(nxm.matrix[i,])
boot.out <- boot(nxm.matrix, R, f2)
Error: incorrect number of subscripts on matrix
Since the final goal would be to put a confidence interval on the
statistics in each cell of the matrix I would like to use the boot.ci.
Even if I do the resampling with the sample function and I just use the
boot.ci by artificially putting togethet an boot.out type of list I run
into problems. Any idea how to set it up?
Katalin Csillery
Division of Biological Sciences
University of Montana, Missoula MT 59801
Phone: 406 243 6106, E-mail: csillery at selway.umt.edu
----------------------------------------------------