Случайные числа и начальные значения
Создавайте воспроизводимые синтетические данные с NumPy.
«Случайные числа и начальные значения» — бесплатный урок Data Science Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Data Science Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Data Science Academy содержит 4 уроков всего.
Зачем генерировать случайные данные
Реальные наборы данных не всегда оказываются под рукой. Случайные числа позволяют создавать тестовые данные, моделировать сценарии и перемешивать выборки по требованию.
Современный генератор
Начните с создания генератора с помощью default_rng. Это современный рекомендуемый способ генерировать случайные числа в NumPy.
rng = np.random.default_rng()Равномерно распределённые дробные числа
Вызовите random у генератора, чтобы получить дробные числа от 0 до 1. Передайте размер, чтобы сразу получить целый массив.
rng.random(3) # 3 floats in [0, 1)Случайные целые числа
Используйте integers, чтобы получать целые числа из диапазона. Нижняя граница включается, а верхняя — нет.
rng.integers(1, 7, size=5) # like dice rollsВыборка из нормального распределения
Метод normal создаёт выборку из колоколообразного распределения. Передайте ему среднее и стандартное отклонение, чтобы задать разброс значений.
rng.normal(0, 1, size=4)Проблема случайности
Запустите случайный код дважды — и получите разные числа. Это нарушает воспроизводимость, если коллега не может повторить Ваши результаты.
Начальные значения фиксируют последовательность
Начальное значение задаёт генератору известную точку старта. Одно и то же начальное значение даёт абсолютно одинаковые числа при каждом запуске.
rng = np.random.default_rng(42)Одинаковое начальное значение — одинаковый результат
Два генератора, созданные с начальным значением 42, создают идентичные массивы. Так ноутбуки сохраняют воспроизводимость на разных компьютерах.
a = np.random.default_rng(42).random(3)
b = np.random.default_rng(42).random(3) # a == bПеремешивание и выборка
Генераторы также умеют перемешивать массивы и выбирать случайные элементы с помощью choice — это идеально для разделения данных или создания тестовых случаев.
rng.choice([10, 20, 30], size=2)Почему это важно для науки
Фиксация начального значения делает эксперименты повторяемыми. Рецензенты могут снова запустить Ваш код и убедиться, что получили именно тот результат, о котором Вы сообщили.
Предпочитайте новый API
Вам ещё может встретиться старый вариант np.random.seed. В новом коде лучше использовать генератор default_rng для более понятной и безопасной работы со случайностью.
Быстрая проверка
Коллега снова запускает Ваш ноутбук и получает другие случайные результаты.
Итоги работы со случайностью
Вы генерировали дробные и целые числа, а также выборки из нормального распределения, а затем зафиксировали их с помощью начального значения, чтобы результаты воспроизводились везде. 🎲
Изучай Python с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 30
- Уроки
- 120
Часто задаваемые вопросы
Урок «Случайные числа и начальные значения» бесплатный?
Да — полный текст урока «Случайные числа и начальные значения» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Data Science Academy, подпишись на CoddyKit PRO. Курс Data Science Academy содержит 4 уроков всего.
Чему я научусь в уроке «Случайные числа и начальные значения»?
Создавайте воспроизводимые синтетические данные с NumPy. Ты практикуешь Data Science Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Data Science Academy?
Предыдущий опыт не требуется. Data Science Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Случайные числа и начальные значения»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Data Science Academy?
Да. Каждый урок Data Science Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Изменение формы и распрямление массивов
- Сумма, среднее и трюк с осями
- Булевы маски для выбора
- Случайные числа и начальные значения