[#408634] How do I make lots of classes aware of each other? — "Andrew S." <lists@...>

I'm apparently missing something fundamental in my knowledge of classes

10 messages 2013/07/02

[#408712] Ruby web service with REST support — "Shubhada S." <lists@...>

Hi All,

17 messages 2013/07/05

[#408812] create variables depending on counter — stefan heinrich <lists@...>

Hi community,

21 messages 2013/07/09

[#408854] execute commands within SMTP email code: send content in variables and not actual variables — dJD col <lists@...>

I am trying to send an email using the code below. I am able to send the

9 messages 2013/07/10

[#409031] tap { break } idiom deserves its own Kernel method? — Andy Lowry <lists@...>

I use this idiom from time to time:

13 messages 2013/07/22

[#409072] Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...>

This is what I want to do.

19 messages 2013/07/23
[#409102] Re: Link To Masses Of External Data In Openoffice? — Tamara Temple <tamouse.lists@...> 2013/07/24

[#409103] Re: Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...> 2013/07/25

tamouse m. wrote in post #1116598:

[#409122] Re: Link To Masses Of External Data In Openoffice? — Tamara Temple <tamouse.lists@...> 2013/07/26

[#409142] Re: Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...> 2013/07/26

tamouse m. wrote in post #1116750:

[#409073] class <=> module — Bráulio Bhavamitra <lists@...>

Hello all,

17 messages 2013/07/23

[#409104] Ruby newbie question on Methods (NoMethoderror) — "Crispian A." <lists@...>

I have recently started learning ruby and so I am writing a small little

10 messages 2013/07/25

[#409170] Working through Ch.10 for learning to program 2.0 (Chris Pine) — JD JD <lists@...>

So, I have been working through this book, and have been doing ok up

33 messages 2013/07/28
[#409195] Re: Working through Ch.10 for learning to program 2.0 (Chris Pine) — Harry Kakueki <list.push@...> 2013/07/29

I tried this and came up with a one-liner that seems to do it. It sorts the

[#409258] WATIR - ScriptError popup on IE - Unable to get rid of! — Graeme Halls <lists@...>

I am new to Ruby & Watir, and I am having a nightmare with IE and Script

11 messages 2013/07/31

Re: create variables depending on counter

From: Robert Klemme <shortcutter@...>
Date: 2013-07-10 08:29:41 UTC
List: ruby-talk #408840
On Wed, Jul 10, 2013 at 7:14 AM, <sto.mar@web.de> wrote:

> Am 10.07.2013 00:03, schrieb stefan heinrich:
>
>  can u say how I have to use the Hash with the headers. I have tried
>> everything but it doesn't work.
>>
>
> That's not a very useful information...
>
>
> You can take my first example:
>
> Am 09.07.2013 17:47, schrieb sto.mar@web.de:
>
>  array = ['Car', 'Dog', 'Dog', 'Car', 'Dog']
>>> indices = Hash.new {|h,k| h[k] = [] }
>>> array.each_with_index {|element, index| indices[element] << index }
>>> indices
>>>    # => {"Car"=>[0, 3], "Dog"=>[1, 2, 4]}
>>> indices['Car']
>>>    # => [0, 3]
>>> indices['Dog']
>>>    # => [1, 2, 4]
>>>
>>
> assuming your data is given as a 2-dimensional array:
>
> data = [
>   ['Dog', 12],
>   ['Car', 14],
>   ['Car', 67],
>   ['Dog', 98],
>   ['Dog', 32]
> ]
>
> then this would work (first, I create a hash with [] as the
> default value, that's the trickiest part of the whole thing):
>
> values = Hash.new {|h,k| h[k] = [] }
> data.each {|header, value| values[header] << value }
>

You can also use Enumerable#group_by:

irb(main):008:0> data.group_by {|s,i| s}
=> {"Dog"=>[["Dog", 12], ["Dog", 98], ["Dog", 32]], "Car"=>[["Car", 14],
["Car", 67]]}
irb(main):009:0> data.group_by {|s,i| s}.each {|k,v| v.map! {|s,i| i}}
=> {"Dog"=>[12, 98, 32], "Car"=>[14, 67]}


> Depending on how your data is given, you need to modify
> the second line.
>

I was going to ask in what structure the data is available.  That bit of
information seems to be missing from the discussion.

I suggest you also look into the docs for the Hash class and
> make heavy use of irb.


That's excellent advice.

Kind regards

robert


-- 
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/

In This Thread