Re: [R] do.call([, ...) question

2004-09-08 Thread Dimitris Rizopoulos
Hi Robin,

you could try the following:

lis - lapply(seq(1, length(dim(a))+1), function(x,a.,jj.) if(x==1) a.
else jj.[[x-1]] ,a.=a, jj.=jj)
do.call([,lis)

I hope this helps.

Best,
Dimitris


Dimitris Rizopoulos
Ph.D. Student
Biostatistical Centre
School of Public Health
Catholic University of Leuven

Address: Kapucijnenvoer 35, Leuven, Belgium
Tel: +32/16/396887
Fax: +32/16/337015
Web: http://www.med.kuleuven.ac.be/biostat/
 http://www.student.kuleuven.ac.be/~m0390867/dimitris.htm/

- Original Message - 
From: Robin Hankin [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Wednesday, September 08, 2004 4:08 PM
Subject: [R] do.call([, ...) question


 Hi again everyone

 I have an arbitrarily dimensional array a and a list jj of
length
 length(dim(a)).The elements of jj are vectors of indexes.

 How do I use do.call() to extract a[ jj[[1]], jj[[2]], jj[[3]], ...]
?


 Toy example follows:

 a - matrix(1:30,5,6)
 jj - list(5:1,6:1)

 I want the following

   a[ jj[[1]],jj[[2]] ]

 How do I do this?



 OBAttempts:

 do.call([,list(a,jj))
 do.call([,c(a,jj))
 do.call([,list(a,unlist(jj)))


 Of course, the one that works is

 do.call([,list(a,jj[[1]],jj[[2]]))

 but I don't know how long jj is apriori so this won't do.
 -- 
 Robin Hankin
 Uncertainty Analyst
 Southampton Oceanography Centre
 SO14 3ZH
 tel +44(0)23-8059-7743
 [EMAIL PROTECTED] (edit in obvious way; spam
precaution)

 __
 [EMAIL PROTECTED] mailing list
 https://stat.ethz.ch/mailman/listinfo/r-help
 PLEASE do read the posting guide!
http://www.R-project.org/posting-guide.html

__
[EMAIL PROTECTED] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html


Re: [R] do.call([, ...) question

2004-09-08 Thread Peter Dalgaard
Robin Hankin [EMAIL PROTECTED] writes:

 Hi again everyone
 
 I have an arbitrarily dimensional array a and a list jj of length
 length(dim(a)).The elements of jj are vectors of indexes.
 
 How do I use do.call() to extract a[ jj[[1]], jj[[2]], jj[[3]], ...] ?
 
 
 Toy example follows:
 
 a - matrix(1:30,5,6)
 jj - list(5:1,6:1)
 
 I want the following
 
   a[ jj[[1]],jj[[2]] ]
 
 How do I do this?
 
 
 
 OBAttempts:
 
 do.call([,list(a,jj))
 do.call([,c(a,jj))
 do.call([,list(a,unlist(jj)))
 
 
 Of course, the one that works is
 
 do.call([,list(a,jj[[1]],jj[[2]]))
 
 but I don't know how long jj is apriori so this won't do.


do.call([,c(list(a),jj))


-- 
   O__   Peter Dalgaard Blegdamsvej 3  
  c/ /'_ --- Dept. of Biostatistics 2200 Cph. N   
 (*) \(*) -- University of Copenhagen   Denmark  Ph: (+45) 35327918
~~ - ([EMAIL PROTECTED]) FAX: (+45) 35327907

__
[EMAIL PROTECTED] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html


RE: [R] do.call([, ...) question

2004-09-08 Thread Kevin Bartz
This worked very well for me:

do.call([, c(list(a), jj))

What about you?

Kevin

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Robin Hankin
Sent: Wednesday, September 08, 2004 7:08 AM
To: [EMAIL PROTECTED]
Subject: [R] do.call([, ...) question

Hi again everyone

I have an arbitrarily dimensional array a and a list jj of length
length(dim(a)).The elements of jj are vectors of indexes.

How do I use do.call() to extract a[ jj[[1]], jj[[2]], jj[[3]], ...] ?


Toy example follows:

a - matrix(1:30,5,6)
jj - list(5:1,6:1)

I want the following

  a[ jj[[1]],jj[[2]] ]

How do I do this?



OBAttempts:

do.call([,list(a,jj))
do.call([,c(a,jj))
do.call([,list(a,unlist(jj)))


Of course, the one that works is

do.call([,list(a,jj[[1]],jj[[2]]))

but I don't know how long jj is apriori so this won't do.
-- 
Robin Hankin
Uncertainty Analyst
Southampton Oceanography Centre
SO14 3ZH
tel +44(0)23-8059-7743
[EMAIL PROTECTED] (edit in obvious way; spam precaution)

__
[EMAIL PROTECTED] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide!
http://www.R-project.org/posting-guide.html

__
[EMAIL PROTECTED] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html