NumPy: сортировка идентификатора учащегося с ростом роста учащегося по заданному идентификатору и росту учащегося
Сортировка и поиск в NumPy: упражнение 4 с решением
Напишите программу NumPy для сортировки идентификатора учащегося с ростом роста учащегося по заданному идентификатору и росту учащегося. Выведите целочисленные индексы, которые описывают порядок сортировки по нескольким столбцам и отсортированным данным.
Пример решения :
Код Python:
import numpy as np
student_id = np.array([1023, 5202, 6230, 1671, 1682, 5241, 4532])
student_height = np.array([40., 42., 45., 41., 38., 40., 42.0])
#Sort by studen_id then by student_height
indices = np.lexsort((student_id, student_height))
print("Sorted indices:")
print(indices)
print("Sorted data:")
for n in indices:
print(student_id[n], student_height[n])
Пример вывода:
Сортированные индексы: [4 0 5 3 6 1 2] Сортированные данные: 1682 38,0 1023 40,0 5241 40,0 1671 41,0 4532 42,0 5202 42,0 6230 45,0
Иллюстрированная презентация:
Редактор кода Python:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите программу NumPy для создания структурированного массива из заданного имени ученика, роста, класса и их типов данных. Теперь сортируйте по классу, затем по высоте, если класс равен.
Далее: Напишите программу NumPy, чтобы получить индексы отсортированных элементов данного массива.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования