| Events |
|
|
|
|
|
|
|
|
| Services |
|
|
|
|
| Interact |
|
|
| -
|
| -
|
|
|
|
|
| About Us |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Re: [vox-tech] which tool is right for the job... (scriptinglanguages)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [vox-tech] which tool is right for the job... (scriptinglanguages)
depending on how large your dataset is, you may be able to do it with
perl hashes- something like this:
perl -e '
while ($line=<STDIN>){
chomp($line);($key,$percent,$value)=split(/,/,$line);
$hash{$key}->{value}+=$percent;
}
foreach $key (keys(%hash)){
foreach $value(keys(%$key)){
$max{$key}=$hash{$key}->{$value} if($hash{$key}->{$value} >$max{key});
}
foreach $key(keys(%hash)){ print "$key,$max{$key}\n"}
}
or something like that.
On Fri, 1 Oct 2004, Dylan Beaudette wrote:
Greetings,
I have a flat text file with records with the following properties:
key, percent, class
For any given key, there may be more than one record - with any 1 of 12
possible classifications. The records occur in 2 types of patterns:
1) For a given key, it is clear which class is 'dominant' , as its percentage
is the highest:
------------------------
458986,60,Inceptisols
458986,25,Mollisols
------------------------
2) For a given key, it is not alway clear which class is dominant, as some
simple addition needs to be done in order to calculate the dominant class
------------------------
458987,30,Inceptisols
458987,30,Inceptisols
458987,20,Mollisols
------------------------
For the first instance the dominant class could easily be extracted by
sorting the records, but the second instance requires some addition and
comparison... As the data is often more like the second instance, a
generalized addition and comparison of classes for each unique key would be
ideal.
I am wondering what the best tool for doing this would be... I would like to
keep the operation done with a minimal set of tools (i.e. bash and awk,
python, perl) ... but unfortunatley I have not been able to get the program
logic with bash quite right (i am more used to C style languages...)
I know this is a littlew vague but any ideas on how to aggregate the various
classes, and then compare them would be greatly appreciated!
Thanks in advance!
Dylan
_______________________________________________
vox-tech mailing list
vox-tech@lists.lugod.org
http://lists.lugod.org/mailman/listinfo/vox-tech
_______________________________________________
vox-tech mailing list
vox-tech@lists.lugod.org
http://lists.lugod.org/mailman/listinfo/vox-tech
|
|