Наука о Данных с Экселем, Питоном, Транспортным Магнатом (видео)

Во время этой лекции мы рассмотрим, как работает функция «ЕСЛИ» в Экселе (Excel), а также поговорим об операторе ветвления в Питоне (Python). Мы проиллюстрируем эти концепции на примере из игры Транспортный Магнат (Transport Tycoon), также известной как OpenTTD.

Видеозапись лекции:

Автобус или поезд?

Представьте, что у нас есть два растущих города в Транспортном Магнате, которые мы хотим соединить для перевозки пассажиров. Наша цель — выбрать оптимальное транспортное средство в зависимости от количества пассажиров, желающих путешествовать между этими двумя городами. Сначала мы организуем автобусное сообщение между городами. В нашей игре каждый автобус может перевозить максимум 35 пассажиров.

Однако что в случае, если спрос увеличится? Автобусы больше не смогут удовлетворять потребности. Поэтому мы строим железнодорожное сообщение. У поезда 3 вагона, каждый из которых вмещает 40 пассажиров, и суммарно это 120 пассажиров за рейс. Такая схема идеально подходит для среднего количества пассажиров.

Эксель: функция ЕСЛИ

Переведём этот сценарий в Эксель, чтобы решить, какой вид транспорта использовать в зависимости от количества пассажиров. Допустим, у нас есть ячейка A2, в которую мы вводим число пассажиров. Мы хотим, чтобы Эксель выбирал «Автобус», если число пассажиров меньше или равно 35, и «Поезд» во всех остальных случаях.

Формула, которую мы будем использовать:

=ЕСЛИ(A2<=35; "Автобус"; "Поезд")

Эта формула вводится в ячейку, и результат отображается в зависимости от разных входных значений. Простая функция ЕСЛИ проверяет условие A2<=35. Если оно выполняется, возвращается «Автобус», иначе — «Поезд».

Питон: оператор if-else

Ту же логику мы реализуем на Питоне. Вот код:

passazhiry = int(input("Введите количество пассажиров: "))

if passazhiry <= 35:
    print("Выберите Автобус для поездки.")
else:
    print("Выберите Поезд для поездки.")

Этот скрипт запрашивает количество пассажиров, а затем использует оператор if-else, чтобы принять решение о виде транспорта.

Исходный код также доступен на ГитХабе.

Автобус, поезд или самолёт?

По мере роста городов спрос может превысить вместимость поездов. Поэтому мы добавляем авиасообщение. Самолёты в нашей игре могут перевозить до 300 пассажиров.

Эксель: вложенная функция ЕСЛИ

С добавлением варианта самолёта нам нужно обновить формулу в Экселе, чтобы учесть третий вариант.

Расширенная формула выглядит так:

=ЕСЛИ(A2<=35; "Автобус"; ЕСЛИ(A2<=120; "Поезд"; "Самолёт"))

Как это работает:

  • Если значение в ячейке A2 меньше или равно 35, то возвращается «Автобус».
  • В противном случае проверяется, меньше или равно 120 значение в ячейке A2. Если да, то возвращается «Поезд».
  • Если ни одно из этих условий не выполняется, по умолчанию выбирается «Самолёт».

Питон: оператор if-elif-else

Теперь обновим наш скрипт на Питоне, чтобы учесть вариант с самолётом.

Вот обновлённый код:

passazhiry = int(input("Введите количество пассажиров: "))

if passazhiry <= 35:
    print("Выберите Автобус для поездки.")
elif passazhiry <= 120:
    print("Выберите Поезд для поездки.")
else:
    print("Выберите Самолёт для поездки.")

Теперь скрипт использует оператор elif (else if) для проверки нескольких условий:

  • Если число пассажиров меньше или равно 35, выбрать «Автобус».
  • В противном случае, если число пассажиров меньше или равно 120, выбрать «Поезд».
  • В остальных случаях выбрать «Самолёт».

Исходный код также доступен на ГитХабе.

Итоги

Мы увидели, как использовать функцию ЕСЛИ в Экселе и операторы ветвления в Питоне для принятия решений на основе данных — в нашем случае это было количество пассажиров. Попробуйте поэкспериментировать с этими концепциями в своих проектах или даже в играх, таких как OpenTTD.

Эта лекция доступна также на других языках.

Polski
English
Русский