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

回答編集履歴

3

a

2018/10/15 09:15

投稿

tiitoi
tiitoi

スコア21962

answer CHANGED
@@ -11,11 +11,13 @@
11
11
  ```
12
12
  import numpy as np
13
13
 
14
+ # 入力を受け付ける。
15
+ data = []
16
+ for i in range(2):
17
+ values = input('空白区切りで2つの数字を入力してください。 (例: 1 5)').split()
18
+ data.append(list(map(int, values)))
14
- data = np.array([[10, 25],
19
+ data = np.array(data)
15
- [10, 54],
16
- [41, 62],
17
- [45, 11],
18
- [14, 12]])
20
+ print(data)
19
21
 
20
22
  # 行ごとに差を計算する。
21
23
  diff = np.abs(data[:, 0] - data[:, 1])
@@ -23,22 +25,6 @@
23
25
 
24
26
  # 昇順ソートする。
25
27
  indices = np.argsort(diff)[::-1]
26
- print(indices) # [1 3 2 0 4]
27
-
28
- import numpy as np
29
-
30
- data = np.array([[10, 25],
31
- [10, 54],
32
- [41, 62],
33
- [45, 11],
34
- [14, 12]])
35
-
36
- # 行ごとに差を計算する。
37
- diff = np.abs(data[:, 0] - data[:, 1])
38
- print(diff)
39
-
40
- # 昇順ソートする。
41
- indices = np.argsort(diff)[::-1]
42
28
  print(indices) # [4 0 2 3 1]
43
29
 
44
30
  for i, index in enumerate(indices):

2

a

2018/10/15 09:15

投稿

tiitoi
tiitoi

スコア21962

answer CHANGED
@@ -25,13 +25,27 @@
25
25
  indices = np.argsort(diff)[::-1]
26
26
  print(indices) # [1 3 2 0 4]
27
27
 
28
- # 差が大きい上位3つのインデックスを取り出す。
29
- top3_indices = indices[:3]
30
- print(top3_indices) # [1 3 2]
28
+ import numpy as np
31
29
 
32
- # 差が大きい上位3つの行を表示する。
33
- print(data[top3_indices])
30
+ data = np.array([[10, 25],
34
- # [[10 54]
31
+ [10, 54],
35
- # [45 11]
36
- # [41 62]]
32
+ [41, 62],
33
+ [45, 11],
34
+ [14, 12]])
35
+
36
+ # 行ごとに差を計算する。
37
+ diff = np.abs(data[:, 0] - data[:, 1])
38
+ print(diff)
39
+
40
+ # 昇順ソートする。
41
+ indices = np.argsort(diff)[::-1]
42
+ print(indices) # [4 0 2 3 1]
43
+
44
+ for i, index in enumerate(indices):
45
+ print('上位 {} 番目に差が大きい行 {} 値 {}'.format(i + 1, index, data[index]))
46
+ # 上位 1 番目に差が大きい行 1 値 [10 54]
47
+ # 上位 2 番目に差が大きい行 3 値 [45 11]
48
+ # 上位 3 番目に差が大きい行 2 値 [41 62]
49
+ # 上位 4 番目に差が大きい行 0 値 [10 25]
50
+ # 上位 5 番目に差が大きい行 4 値 [14 12]
37
51
  ```

1

d

2018/10/15 08:19

投稿

tiitoi
tiitoi

スコア21962

answer CHANGED
@@ -19,11 +19,11 @@
19
19
 
20
20
  # 行ごとに差を計算する。
21
21
  diff = np.abs(data[:, 0] - data[:, 1])
22
- print(diff)
22
+ print(diff) # [15 44 21 34 2]
23
23
 
24
24
  # 昇順ソートする。
25
25
  indices = np.argsort(diff)[::-1]
26
- print(indices) # [4 0 2 3 1]
26
+ print(indices) # [1 3 2 0 4]
27
27
 
28
28
  # 差が大きい上位3つのインデックスを取り出す。
29
29
  top3_indices = indices[:3]