Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: Hash element exists/delete

by roboticus (Chancellor)
on Jan 22, 2013 at 11:06 UTC ( [id://1014622]=note: print w/replies, xml ) Need Help??


in reply to Hash element exists/delete

Dr. Manhattan:

While there are a few interesting topics, no-one has mentioned that the easiest way to remove the upper-case characters is not to have any in the first place:

my %H; while (<>) { my @words = map { lc } # map all words to lower case split /\s+/, $_; # break $_ into a list of words $H{$_}++ for @words; # add words to hash }

If you needed the upper-case versions at some point, then this may not be useful. But people frequently miss the opportunity to clean up the data before storing it, so I thought I'd mention it, just in case.

...roboticus

When your only tool is a hammer, all problems look like your thumb.

Replies are listed 'Best First'.
Re^2: Hash element exists/delete
by tmharish (Friar) on Jan 22, 2013 at 11:16 UTC

    Update:

    roboticus, You have assumed that the input is a list of words but it is of the format:

    Word Frequency Word Frequency Word Frequency Word Frequency

    Given this, the code should probably be:

    my %H; while (<>) { my ( $word, $freq ) = split /\s+/, $_; $word = lc( $word ) ; $H{ $word } += $freq ; }

    Although that does not change your primary thesis: people frequently miss the opportunity to clean up the data before storing it

    The way to achieve this with minimum changes to your code is in my original response:

    Original Response:

    I think you meant:

    $H{ $words[0] } += $words[1] ;

      tmharish:

      Yes, I was making an assumption about the input. For your input format, your code looks appropriate.

      ...roboticus

      When your only tool is a hammer, all problems look like your thumb.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1014622]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others browsing the Monastery: (5)
As of 2024-04-25 17:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found