in reply to structuring data: aka walk first, grok later

Hi there,

"Given that I want to study the distribution of these x and y points on each detector in each observation, what would be the best structure for this data?"

I'd suggest XML. You could end up with a structure like this:

<observation id="21"> <detector id="DET-2"> <hitX>896.657564735788</hitX> <hitY>678.83860967799</hitY> </observation> <observation id="21"> <detector id="DET-3"> <hitX>32.0939023018969</hitX> <hitY>621.656550474314</hitY> </observation> <!-- ... and so on ... -->

Such a structure can then easily be queried using XPath expressiones.

There are powerful and easy to use Perl modules for such tasks, e.g. XML::Simple.
See also:
Writing SAX Drivers for Non-XML Data
Stepping up from XML::Simple to XML::LibXML
XPath Tutorial

donp