Отримання випадкові числа в R, або в інших середовищах, це часто є основною вимогою в наукових дослідженнях. Дія таким чином може зменшити будь-яке упередження, породжене нами під час відбору вибірки, з подальшим усуненням підозр при виборі тієї чи іншої вибірки.

Ви не знаєте, про що я? Уявіть на мить, що нам потрібно відібрати 10 примірників, щоб оцінити гіпотезу. Як рецензенти наукової статті та/або її читачі можуть бути впевнені, що вибір був зроблений на основі емпіричних аргументів, а не на хитрощах, спрямованих на вибір тих осіб, які обґрунтовують нашу гіпотезу? Ну, можливим рішенням є отримання випадкових чисел. І в R дуже легко отримати випадкові числа.

На нашій сторінці ми закохані в Р.. Отже, ви знайдете не лише статті про випадкові числа, застосовані до факторів чи списків, але й про створення інтервалів прогнозування за допомогою ggplot2, довірчих інтервалів та довгих тощо. Якщо ви хочете побачити все, що ми публікуємо про R, ми запрошуємо вас переглянути це ...

Які там функції?

Потрібно, щоб я згадав вам перед тим, як перейти до роботи з програмуванням R, що вони є дві конкретні функції генерувати випадкові числа в R. Якщо ми хочемо отримати випадковим чином цілі числа, нам доведеться використовувати функцію зразок. Навпаки, якщо те, що ми хочемо, є раціональні числа (тобто вони мають десяткові числа), нам доведеться виконати функцію руніф. Але не хвилюйтеся, тому що ми збираємось детально їх переглянути нижче.

Більш важливим, якщо це можливо, є те, що виконання двох функцій, про які ми дізнаємось у цій публікації, дасть набір випадкових чисел, які буде рівномірно розподілений по інтервалу що ми позначили. Це фундаментальна характеристика, яку нам доводиться враховувати, оскільки якби ми хотіли генерувати випадкові числа, які були адаптовані до певного типу розподілу, такого як нормальний розподіл, вони більше не будуть розподілятися справедливим чином у зазначений інтервал.

функції

Функція вибірки R () для випадкового генерування цілих чисел

Почнемо спочатку з цілих чисел, тобто чисел, що не містять десяткових знаків. За допомогою простої функції R ми побачимо, як отримати його випадкові числа. Ця функція називається sample (), і вона знаходиться в базовому пакеті R. Але давайте розглянемо її на прикладі спочатку, щоб пояснити нижче, що це означає, і як ми можемо модифікувати її відповідно до наших інтересів:

Давайте розберемо атрибути команди зразок:

  • 1:30 = означає, що інтервал даних буде між обома числами (1 і 30 включно).
  • 10 = означає кількість випадкових чисел, які потрібно залишити за попередній інтервал.
  • замінити = F/T = якщо ви хочете, щоб випадкові числа могли повторюватися (тобто отримати, наприклад, два числа 3), ми залишаємо значення T (істина). Якщо ми не хочемо повторення, ми ставимо значення F (хибне).

Важливо зазначити, що той факт, що випадкові числа можна повторити (замінити = T), не означає, що дублікати або повторювані числа завжди будуть з'являтися.

Функція R runif () для генерації випадкових раціональних чисел

Як ми бачили, попередня функція вибірки не дозволяє отримувати десяткові числа. Що робити, якщо ми також хочемо отримати числа з десятковими числами? Ну, як ви знаєте, цього можна досягти за допомогою функції runif R. Ця функція включена в пакет R, який називається stats. Ми також побачимо це в дії на прикладі для глибшого вивчення пізніше:

Як і у випадку з функцією вибірки, функція runif складається з трьох атрибутів:

  • 5 = кількість десяткових чисел, яку ми хочемо генерувати випадковим чином. У цьому випадку ми хочемо, щоб він повернув 5 випадково вибраних чисел.
  • хв = 3 Y макс = 4 вони представляють інтервал, з якого випадкові числа будуть витягнуті в R. У нашому прикладі наші випадкові числа будуть знаходитись між 3 і 4. Важливо зазначити, що не обов'язково вводити min = і max = у нашу функцію. Якщо ми опустимо їх, як показано нижче, випадкові числа з позначеного інтервалу продовжуватимуться витягувати.

Важливим є підтримувати порядок атрибутів, перше значення - це кількість випадкових чисел, яке ми хочемо, друге - мінімальне значення інтервалу, а третє - максимальне значення того самого.

Останній коментар: результати всі різні

Виконання кожної з перерахованих вище функцій [sample () або runif ()] повторюваним способом дасть нам, очевидно, набір завжди різних випадкових чисел. Подивимось, виконавши функцію sample () 6 разів з однаковими атрибутами: