[R-sig-Geo] reading select values from a binary file
reeves at nceas.ucsb.edu
Wed Dec 9 19:20:53 CET 2009
Faced with a similar challenge, and NOT wanting to resort to writing a C
employing fseek(), I just used two readBin calls: One to read (and
implicitly discard) data up
to the spot I actually wanted to read, and a second call to read the
here is a code sample:
fileCon = file(sTsFileName,"rb")
# Offset has been calculated above: number of NumericByte-sized elements
# the data of interest.
if (iOffset > 0)
TestVec = readBin(fileCon,numeric(),size =
dTimeSeries = readBin(fileCon,numeric(),size =
Crude, but effective. I WIS that we could add a seekBin() function that
positions the file pointer
to the desired spot.
Hope this helps,
Barry Rowlingson wrote:
> On Wed, Dec 9, 2009 at 4:58 PM, Jonathan Thayn <jthayn at ilstu.edu> wrote:
>> Hopefully there is a simple solution to this problem. I process really large satellite images in R and, in order to not offend the memory-limitation demi-gods, I open each row of the imagery one at a time, process it, write the results, and then open the next line. I use readBin() to open each line. For examaple, say I have the following file:
>> which I can open using readBin():
>> Now I want to open select values from the binary file, not a complete line. Say I want to read values 3, 7, and 10, process them, write the result, and then read values 4, 5, and 17. How do I direct readBin to those specific values? Thanks.
> You need to seek help. Or help(seek). Yes really.
Scientific Programmer/Analyst and Data Manager
National Center for Ecological Analysis and Synthesis
UC Santa Barbara
805 892 2533
More information about the R-sig-Geo