Объединение массивов
Часть раздела Данные и графики путешествия по Machine Learning на Coddy. Урок 17 из 60.
Музей подсчитал количество посетителей за три утра, а затем за два вечера. np.concatenate соединяет массивы один за другим:
Код:
morning = np.array([12, 15, 19])
evening = np.array([20, 18])
print(np.concatenate([morning, evening]))Это выводит [12 15 19 20 18]. Модели нужно другое: одна строка на образец, один столбец на признак. np.column_stack размещает массивы рядом в виде столбцов:
В коде:
sizes = np.array([45, 60, 82])
rents = np.array([900, 1200, 1500])
table = np.column_stack([sizes, rents])
print(table.shape)Это выводит (3, 2). Каждая строка берет значение из каждого массива, поэтому их длины должны совпадать.
Задание
ЛегкоДля исследования нужна одна таблица людей: возраст в первом столбце, ежедневное время перед экраном в часах — во втором, сначала группа 1. Код коллеги завершается с ошибкой, и после её исправления таблица всё ещё получается неправильной.
Исправь три строки, в которых создаются ages, hours и table. Последние две строки оставь без изменений.
Для меньшего исследования с тремя людьми исправленная программа выводит:
[[30 5]
[28 8]
[62 2]]
People: 3, measurements each: 2Попробуйте сами
import numpy as np
# Первая группа: возраст каждого человека и ежедневное время перед экраном в часах
ages_1 = np.array([23, 35, 41])
hours_1 = np.array([6, 4, 3])
# Вторая группа
ages_2 = np.array([19, 52])
hours_2 = np.array([7, 2])
# Для исследования нужна одна строка на каждого человека: сначала возраст, затем время в часах. Исправьте строки ниже
ages = np.concatenate([ages_1, ages_2])
hours = np.concatenate(hours_1, hours_2)
table = np.concatenate([ages, hours])
# Не изменяйте строки ниже
print(table)
print(f"People: {table.shape[0]}, measurements each: {table.shape[1]}")
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Данные и графики
4Преобразование данных
Изменение формы массивовОбъединение массивовСлучайные числаПовторение: симуляция броска кубика2Массивы NumPy
Создание массивовФорма и размерДиапазоны чиселИндексация и срезыПовторение: температурная сетка5Линейные графики и диаграммы рассеяния
Подписи и заголовкиДиаграммы рассеянияНесколько линий и легендыЦвета и маркерыФигуры и осиПовторение: шаги за неделю8Фильтрация и сортировка
Выбор строкФильтрация строкСортировка значенийНовые столбцыПовторение: лучшие товары3Математика массивов
Математика над целыми массивамиСводная статистикаСтатистика по осямТранслированиеБулевы маскиПовторение: результаты экзамена6Графики для данных
Столбчатые диаграммыГистограммыНесколько графиков в одномИзображения как массивыПовторение: отчёт об осадках9Группировка и очистка данных
Подсчёт значенийГруппировка данныхНесколько сводокПропущенные значенияПовторение: результаты опроса12Заключительные задания
Отчёт о продажахПоказания датчиковЦифры с первого взглядаИсследователь-пингвинПотренируйтесь самостоятельно: Онлайн-компилятор Python