I am a bit stumped.
I have two files. Each file has several columns delimited by single space. There is a leading whitespace. I am only interested in columns 1 and 2. Column 1 is made up of names while column 2 is cholesterol level.
Some names are in both files, so I only want to focus on those names in both.
Knowing this, I have decided that a hash of arrays is an appropriate data structure, so my data is organized as:
Patient Cholesterol level John Kay 151 128 Sally Gi 174 145
There are other patients.
Using the split function, I can designate columns 1 and 2 as various variables, so column 1 = $patient (key) and column two = $level (value) for %health.
I can push $level into an array like so: push (@{($health{$patient}}, $level); However, what if I want to do something with each cholesterol list for each patient? For example, if I wanted to list the levels from lowest to highest, would I use a loop in which I can write: @levelssorted = sort {$a <=> $b} @{($health{$patient}); and the level numbers for each patient would then be from lowest to highest?
Any help is welcome. Thank you.
In reply to Push Function and Hash by eepvesity
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |