[R] Repeating functions
Sean Davis
sdavis2 at mail.nih.gov
Thu Dec 29 17:09:13 CET 2005
On 12/29/05 11:01 AM, "Kort, Eric" <Eric.Kort at vai.org> wrote:
> Ronnie Babigumira said...
>>
>> Hi, I have a number of spatial weight files and using Roger Bivand's spdep, I
>> would like to
>>
>> 1. Convert them into neighbor lists using
>> 2. Convert the neighbor lists into spatial weights
>>
>> For a given file, the syntax would be
>>
>> mygal_nb1 <- read.gal("mygalfile1", override.id = TRUE)
>> myweight1 <- nb2listw(mygal_nb1)
>>
>> I have mygalfile[i] with i from 1 through to 6 and would like to repeat the
>> above two lines through 1 to 6.
>> something like (the syntax below is not correct...just an illustration)
>>
>> for (i in 1:6) {
>> mygal_nb[i] <- read.gal("mygalfile[i]", override.id = TRUE)
>> myweight[i] <- nb2listw(mygal_nb[i]
>> }
>>
>>
>> Kindly point me in the right direction (whilst read through the material I
>> have)
>
> Looks like you want to create lists of objects. Likely the best place to
> start is looking at the section on lists in An Introduction to R (which came
> with your R distribution and can be accessed via help.start(), or you can
> download it here: http://cran.r-project.org/doc/manuals/R-intro.pdf).
To be just a bit more explicit, see (untested) code. Lists are quite
powerful data structures, so learn to use them well.
mygal_nb <- list()
myweight <- list()
for (i in 1:6) {
mygal_nb[[i]] <- read.gal(mygalfile[i], override.id = TRUE)
myweight[[i]] <- nb2listw(mygal_nb[[i]])
}
Sean
More information about the R-help
mailing list