Menu
CoddyTech

Объединение массивов

Часть раздела Данные и графики путешествия по Machine Learning на Coddy. Урок 17 из 60.

Музей подсчитал количество посетителей за три утра, а затем за два вечера. np.concatenate соединяет массивы один за другим:

Пять ячеек в одном ряду: утренние значения 12, 15, 19, за которыми следуют вечерние значения 20, 18

Код:

morning = np.array([12, 15, 19])
evening = np.array([20, 18])
print(np.concatenate([morning, evening]))

Это выводит [12 15 19 20 18]. Модели нужно другое: одна строка на образец, один столбец на признак. np.column_stack размещает массивы рядом в виде столбцов:

Таблица из 3 квартир в 2 столбцах: площади 45, 60, 82 рядом с арендной платой 900, 1200, 1500, одна квартира в каждой строке

В коде:

sizes = np.array([45, 60, 82])
rents = np.array([900, 1200, 1500])
table = np.column_stack([sizes, rents])
print(table.shape)

Это выводит (3, 2). Каждая строка берет значение из каждого массива, поэтому их длины должны совпадать.

challenge icon

Задание

Легко

Для исследования нужна одна таблица людей: возраст в первом столбце, ежедневное время перед экраном в часах — во втором, сначала группа 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]}")
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Данные и графики

Потренируйтесь самостоятельно: Онлайн-компилятор Python