[R] reading long matrix
Colin Beale
c.beale at macaulay.ac.uk
Thu Dec 22 18:06:33 CET 2005
Hi,
I'm needing some help finding a function to read a large text file into an array in R. The data are essentially presence / absence / na data for many species and come as a grid with each species name (after two spaces) at the beginning of the matrix defining the map for that species. An excerpt could therefore be:
SPECIES1
999001099
900110109
011101000
901100101
110100019
901110019
SPECIES2
999000099
900110119
011101100
901010101
110000019
900000019
SPECIES3
999001099
900100109
011100010
901100100
110100019
901110019
where 9 is actually na, 0 is absence and 1 presence. The final array I want to create should have dimensions that are the x and y coordinates and the number of species (known in advance). (In this example dim = c(9,6,3)). It would be sort of neat if the code could also read the species name into the appropriate names attribute, but this is a refinement that I could probably do if someone can help me read the data into R and into an array in the first place. I'm currently thinking a line by line approach using readLines might be the best option, but I've got a very long file - well over 100 species, each a matrix of 70 x 100 datapoints. making this option rther time consuming, I expect - especially as the next dataset has 1300 species and a much larger grid...
Any hints would be gratefully recieved.
Colin Beale
Macaulay Land Use Research Institute
More information about the R-help
mailing list