teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

補足への回答

2017/01/09 01:55

投稿

otn
otn

スコア86349

answer CHANGED
@@ -22,4 +22,11 @@
22
22
  ```Ruby
23
23
  # 男性の最高齢
24
24
  who = data.find_all{|x| x[2]=="男"}.sort_by{|x| x[10]}.first
25
- ```
25
+ ```
26
+
27
+ #補足への回答
28
+ > invalid byte sequence in Windows-31J (ArgumentError)
29
+
30
+ おそらく、Ruby起動オプションまたは環境変数RUBYOPTで、外部エンコーディングにWindows-31J(いわゆるシフトJIS)が指定されているのに、実際のCSVファイルの文字コードがシフトJISでないと言うことです。
31
+ UTF-8なのであれば、
32
+ `Encoding.default_external = "UTF-8"`を記述して下さい。

1

微修正

2017/01/09 01:55

投稿

otn
otn

スコア86349

answer CHANGED
@@ -2,8 +2,10 @@
2
2
  ```Ruby
3
3
  # 最初に集計表を作る
4
4
  shukei = Hash.new(0)
5
+ ~~~~~
5
6
  # 各行に対してカウントアップを繰り返す
6
- shukei[array[5]] +=1
7
+ shukei[array[5]] +=1
8
+ ~~~~~
7
9
  # 最後に結果を件数でソートして上位5まで取る
8
10
  top5 = shukei.sort_by{|k,v| -v}.take(5)
9
11
  ```