NumPy: по заданному имени ученика, росту и классу сортировать по классу, а затем по высоте, если класс равен
Сортировка и поиск в NumPy: упражнение-3 с решением
Напишите программу NumPy для создания структурированного массива из заданного имени ученика, роста, класса и их типов данных. Теперь сортируйте по классу, затем по высоте, если класс равен.
Пример решения :
Код Python:
import numpy as np
data_type = [('name', 'S15'), ('class', int), ('height', float)]
students_details = [('James', 5, 48.5), ('Nail', 6, 52.5),('Paul', 5, 42.10), ('Pit', 5, 40.11)]
# create a structured array
students = np.array(students_details, dtype=data_type)
print("Original array:")
print(students)
print("Sort by class, then height if class are equal:")
print(np.sort(students, order=['class', 'height']))
Пример вывода:
Исходный массив: [(b'James ', 5, 48.5) (b'Nail', 6, 52.5) (b'Paul ', 5, 42.1) (b'Pit ', 5, 40.11)] Сортировка по классу, затем высота, если класс равен: [(b'Pit ', 5, 40.11) (b'Paul', 5, 42.1) (b'James ', 5, 48.5) (b'Nail ', 6, 52.5)]
Иллюстрированная презентация:
Редактор кода Python:
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите программу NumPy для создания структурированного массива из заданного имени ученика, роста, класса и их типов данных. Теперь рассортируйте массив по высоте.
Далее: Напишите программу NumPy для сортировки идентификатора ученика с ростом роста ученика по заданному идентификатору ученика и росту. Выведите целочисленные индексы, которые описывают порядок сортировки по нескольким столбцам и отсортированным данным.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования