こんにちは、みっちゃんです。

今回の記事では、Rubyを使ってデータ解析をするときに、頻繁に使用する構文について、備忘録として紹介したいと思います。

Rubyのインストールなどについては、こちらの記事をご覧ください。

目次(まとめ)
- 数値配列から平均値を算出する
- 二次元配列を並び替える

数値配列から平均値を算出する

ここでは、以下のような数値配列を考えます。

array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

このような配列から平均値を算出したい場合には、以下のように実行すればOKです(先頭の"p"は、標準出力するprintの意味です)。

p array.inject(0.0){|r,i| r+=i }/array.size

二次元配列を並び替える

ここでは、以下のような配列を考えます。

array = [["A", 90], ["B", 85], ["C", 99], ["D", 78], ["E", 94]]

この配列を、数字が大きいものから順に(降順に)並び替える場合には、以下のように実行します。

p array.sort {|a, b| b[1] <=> a[1] }
#=> [["C", 99], ["E", 94], ["A", 90], ["B", 85], ["D", 78]]

逆に、数字が小さいものから順に(昇順に)並び替える場合には、以下のように実行します。

p array.sort {|a, b| a[1] <=> b[1] }
#=> [["D", 78], ["B", 85], ["A", 90], ["E", 94], ["C", 99]]

または、以下のように実行することも可能です。

p array.sort {|a, b| b[1] <=> a[1] }.reverse
#=> [["D", 78], ["B", 85], ["A", 90], ["E", 94], ["C", 99]]


よく使う構文だと思うので、是非使ってみてください。