こんにちは、みっちゃんです。
今回の記事では、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]]
よく使う構文だと思うので、是非使ってみてください。