in reply to Hash creation problem

Your structure there is a hash of hashes (HoH), see perldsc for details of data structures like this. To construct it:

  1. Read first line of data, split on whitespace and store in an array. These are your field names.
  2. Read next line of data and split on whitespace. First column is outer key, columns 2 .. n are the values to be associated with the equivalent key names in the array from step 1 above.
  3. Repeat step 2 until eof.

Try that and follow-up here with your code if you get stuck. Note that arrays start from zero in Perl, so the second column will actually be $array[1] in your code, etc. HTH.

Update: Splitting on whitespace could give you problems with the missing fields. Unless you have well defined field delimiters, follow BrowserUK's fixed-column approach above when reading instead.