Введение в генератор случайных чисел в R

Генератор случайных чисел в R является важным аспектом науки о данных, а статистика генерирует случайные числа или генерирует случайные элементы. Например, выбор случайных людей из фрейма данных о населении для анализа и анализа данных. Простое решение для генерации случайных чисел - использование функций. Случайные числа полезны в различных областях, таких как моделирование, наука о данных и выборка (статистика). С расширением сети развитие исследований генератора случайных чисел представляется необходимым. Случайные числа играют ключевую роль в системах безопасности и предоставляют нам сложную систему для усиления безопасности сети.

Вот один пример ниже, чтобы сгенерировать и вывести 50 значений от 1 до 99 с помощью функции runif ().

Код

RandomNum <- runif(50, 1, 99)
RandomNum

Выход:

Генератор случайных чисел помогает генерировать последовательность цифр, которую можно сохранить как функцию для последующего использования в операциях. Генератор случайных чисел на самом деле не генерирует случайные значения, так как для него требуется начальное значение, называемое SEED. Генерацией случайных чисел можно управлять с помощью функций SET.SEED (). Команда SET.SEED () использует целое число для запуска случайного числа поколений. Кроме того, сгенерированная последовательность случайных чисел может быть сохранена и использована позже.

Например, мы будем использовать код для выборки 10 чисел от 1 до 100 и повторим его пару раз.

В первый раз SET.SEED () начнется с начального значения как 5, а второй раз с начального значения как 12. Для каждой итерации было сгенерировано десять случайных чисел.

Код

set.seed(5) # random number will generate from 5
TenRandomNumbers <- sort(sample.int(100, 10))
TenRandomNumbers

Выход:

Код:

set.seed(12) # random number will generate from 12
TenRandomNumbers <- sort(sample.int(100, 10))
TenRandomNumbers

Выход:

Функции генератора случайных чисел

В R есть встроенные функции для генерации набора случайных чисел из стандартных распределений, таких как нормальное, равномерное, биномиальное распределение и т. Д. В следующем разделе мы увидим различные функции, такие как runif (), rnorm (), rbinom () и rexp () для генерации случайных чисел.

1. Равномерно распределенные случайные числа

Для генерации равномерно распределенного случайного числа используется runif (). Диапазон по умолчанию 0 - 1. Сначала нам потребуется указать число, которое необходимо сгенерировать. Кроме того, диапазон распределения может быть указан с помощью аргументов max и min.

Код

# To get 5 uniformly distributed Random Numbers
runif(5)

Выход:

Код

# Get 5 random Numbers from 5 to 99
runif(5, min=5, max=99)

Выход:

Код

#To generate 5 integers from 0 to 100
floor(runif(5, min=0, max=101))

Выход:

Код

# Generating integers without replacement
sample(1:100, 5, replace=FALSE)

Выход:

2. Нормально распределенные случайные числа

Для генерации чисел из нормального распределения используется rnorm (). Где среднее значение равно 0, а стандартное отклонение равно 1. Во-первых, нам потребуется указать число, которое необходимо сгенерировать. Кроме того, среднее и SD (стандартное отклонение) могут быть указаны аргументы.

Код

rnorm(5)

Выход:

Код

# using a different mean and standard deviation
rnorm(4, mean=70, sd=10)

Выход:

Код

# histogram of the numbers to verify the distribution
X <- rnorm(400, mean=70, sd=10)
hist(X)

Выход:

Использование rnorm () для генерации нормального распределенного случайного числа

3. Биноминальные случайные числа

Биноминальные случайные числа представляют собой дискретный набор случайных чисел. Для получения биномиального числа значение n изменяется на желаемое количество испытаний. Например, испытание 5, где n = 5

Код:

n= 5
p=.5
rbinom(1, n, p)
# 1 success in 5 trails
n= 5
p=.5
rbinom(19, n, p) # 10 binomial numbers

Выход:

4. Экспоненциально распределенные случайные числа

Экспоненциальное распределение используется для описания срока службы электрических компонентов. Например, средний срок службы электрической лампы составляет 1500 часов.

Код:

x=rexp(100, 1/1500)
hist(x, probability=TRUE, col= gray(.9), main="exponential mean=1500")
curve(dexp(x, 1/1500), add= T)

Выход:

Генерация целого числа и числа с плавающей точкой

Теперь мы узнаем о генерации случайных чисел для двух типов чисел, доступных в R. Это целые числа и числа с плавающей запятой или числа с плавающей запятой. R автоматически определяет две категории и перемещается по ним по мере необходимости. Целое число в R состоит из целого числа, которое может быть положительным или отрицательным, тогда как число с плавающей запятой включает в себя действительные числа. Он состоит из значения, которое указывает самую дальнюю цифру от десятичной точки. Значение в двоичном формате и указание количества двоичных мест для перемещения. Для генерации случайных целых чисел встроенная функция sample () является надежной и быстрой. Бизнес-потребности требуют анализа образца данных. Для выбора сэмпла R имеется функция sample (). Для генерации случайных целых чисел от 5 до 20 ниже используется пример кода функции.

Код

rn = sample(5:20, 5)
rn

Выход:

Генерация случайной выборки из 5

В приведенном выше примере пять значений были сгенерированы в качестве аргумента. Мы видели, как подмножество случайных значений может быть выбрано в R. В режиме реального времени вам потребуется сгенерировать случайную выборку из существующего фрейма данных. Выбор образца данных для наблюдения из большого набора данных - это одна из задач, которую инженеры данных выполняют в своей повседневной жизни.

Код

Height_Weight_Data <- read.csv("test.csv") # to test this please download csv file
Height_Weight_Data
# Height_Weight_Data sample data frame; selecting a random subset in r
Sample <- Height_Weight_Data(sample(nrow(Height_Weight_Data), 5), ) # pick 5 random rows from dataset
Sample

Выход:

Генерация случайной выборки из имен фреймов данных в виде Height_Weight_Data

Несколько вещей, которые нужно помнить относительно чисел с плавающей точкой.

  • Они бинарные по своей природе.
  • Ограничено в реальных цифрах представлены.

Теперь давайте посмотрим, как случайное число с плавающей запятой может генерироваться в диапазоне от -10 до 10

Код

Random <- runif(n=10, min=-10, max=10)
Random

Выход:

Генерация случайных чисел с плавающей точкой

Runif () относится к случайной форме. В приведенном выше примере мы вывели 10 случайных распределенных чисел между (-10: 10)

Вывод

В этой статье мы обсудили генератор случайных чисел в R и увидели, как функция SET.SEED используется для управления генерацией случайных чисел. Мы видели, как SEED можно использовать для воспроизводимых случайных чисел, которые могут генерировать последовательность случайных чисел и настраивать генератор семян случайных чисел с помощью SET.SEED (). Статистический метод, который требует генерирования случайных чисел, иногда используется во время анализа. R оснащен множеством функций, таких как равномерная, нормальная, биноминальная, пуассоновская, экспоненциальная и гамма-функция, которая позволяет моделировать наиболее распространенное распределение вероятностей.

Рекомендуемые статьи

Это было руководство для генератора случайных чисел в R. Здесь мы обсуждаем введение и функции генератора случайных чисел в R вместе с соответствующим примером. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Линейная регрессия в R
  2. Биномиальное распределение в R
  3. Логистическая регрессия в R
  4. Линейный график в R
  5. Руководство по генератору случайных чисел в Python
  6. Генератор случайных чисел в C #
  7. Генератор случайных чисел в PHP