Функция Sample() в R

Funkcia Sample V R



В R мы получаем случайную выборку значений из вектора или списка, используя функцию sample(). Это позволяет нам случайным образом выбирать подмножество данных, которое полезно во многих статистических приложениях. Если входными данными является список в функции sample(), выходными данными также будет список с тем же количеством элементов, но с выбранными элементами. В этой статье демонстрируется функция sample() языка R с реализацией, которая задает различные аргументы.

Пример 1: Использование функции Sample() с аргументом данных

Функция sample() R должна быть снабжена данными выборки для случайной генерации числа. Демонстрационные данные являются обязательным аргументом функции sample(), код которой приведен ниже:

данныеX < - с ( 10 , двадцать , 30 , 40 , пятьдесят , 60 , 70 , 80 , 90 , 100 )

образец ( данныеX , 3 )

образец ( данныеX , 3 )

Здесь мы сначала генерируем векторы целочисленных элементов в переменной «dataX». Затем мы дважды вызываем функцию sample() в коде и передаем ей в качестве аргумента вектор «dataX», который мы ранее сгенерировали. Первое использование sample(dataX, 3) берет случайную выборку из трех элементов из вектора «dataX». Результаты представляют собой случайную перестановку трех элементов из «dataX». После этого мы снова используем выборку (a, 5), которая берет еще одну независимую случайную выборку из трех элементов из вектора «dataX». На этот раз результат полностью отличается от предыдущего.







Вывод показывает различные элементы при двойном вызове функции sample(). Обратите внимание, что каждый раз, когда мы создаем выборку случайным образом, получаются разные элементы из векторов:





Пример 2. Использование функции Sample() с аргументом замены

Кроме того, у нас есть аргумент «заменить» функции sample(), который принимает логические значения. Подобный элемент может быть выбран более одного раза, если элемент выбран с опцией замены TRUE. Однако, если установлено значение FALSE, может быть только один выбор каждого элемента, который вызывает выборку элементов без замены.





random_numbers '=' с ( одиннадцать , 25 , 12 , 89 , Четыре пять , 16 , 67 , 38 , 96 , 55 , 73 )

образец ( random_numbers , 4 , заменять '=' истинный )

образец ( random_numbers , 5 , заменять '=' истинный )

Здесь мы сначала определяем вектор с некоторыми числовыми значениями в переменной «random_numbers». После этого мы вызываем функцию sample(), где «random_numbers» передается в качестве аргумента. Значение «4» указано для функции sample(), что указывает на то, что она выбирает только четыре случайных значения из векторов в «random_numbers».

Далее, replace=TRUE в функции sample() указывает, что каждое значение может быть выбрано более одного раза. Затем мы снова запускаем функцию sample(), которая на этот раз выбирает «5» случайных значений из векторов. Точно так же мы устанавливаем аргумент замены на «ИСТИНА», как и раньше, для нескольких вариантов выбора для каждого значения.



Как мы видим, первый вывод отображает вектор из 4 случайно выбранных элементов из вектора «random_numbers». Однако следующий вывод отображает вектор из «5» случайно выбранных элементов:

Пример 3: Использование функции Sample() с аргументом размера

Следующий аргумент, который передает функция sample(), — это «размер». «Размер» — это необязательный параметр, который указывает количество отбираемых образцов. Код функции sample() с параметром size приведен ниже:

векторы < - 1 : 10

образец ( векторы , размер '=' 5 )

Здесь числовой вектор определяется как последовательность целых чисел от 1 до 10 в переменной «vectors». Затем функция sample() используется для случайного выбора элементов из вектора. Как мы видим, функция sample() принимает два аргумента. Первый аргумент — это векторы, из которых мы получаем выборку. Следующий аргумент — это размер, указанный со значением «5», что указывает на то, что из вектора нужно выбрать только пять элементов.

Следовательно, выбранные элементы возвращаются в случайном порядке в виде нового вектора в следующем выводе:

Пример 4: Использование функции Sample() для списка R

Более того, функцию sample() можно использовать для списка в R. В этом разделе примера из списка получаются случайные значения.

R_list < - список ( 1 : 4 ,

913 ,

с ( 'ИКС' , 'ГГГ' , 'ХОРОШИЙ' ) ,

'ЗЗЗ' ,

5 )

результат < - Р_список [ образец ( 1 :длина ( R_list ) , размер '=' 4 ) ]

результат

Здесь список «R_list» определяется элементами разных типов, включая вектор числовых значений, одно число, вектор символов, строку и другое число. После этого мы создаем переменную «результат», в которой вызывается функция sample().

Внутри функции sample() мы устанавливаем выражение «1:length(R_list)», которое указывает векторы индексов для выборки. Затем у нас есть аргумент «размер», чтобы указать количество элементов для выборки, которое равно «4». Поэтому «R_list» генерирует три случайно выбранных элемента из списка «R_list». Поскольку элементы в списке «R_list» имеют разные типы, результирующие элементы в «результате» также могут быть разных типов.

Результат представляет собой новый список, который содержит случайное подмножество исходного списка:

Пример 5: Использование функции Sample() с аргументом Prob

Кроме того, у нас есть параметр «prob» функции sample(). Аргумент «prob» дает вероятность выбранного элемента в векторе. Обратите внимание, что предполагается, что все элементы имеют равную вероятность, когда аргумент «вероятность» не используется.

мои данные '=' с ( 31 , 99 , 5 , 24 , 72 )

образец ( мои данные , размер '=' 10 , заменять '=' истинный ,

проблема '=' с ( 0,5 , представитель ( 0,1 , 4 ) ) )

Здесь элементы числовых векторов относятся к «my_data». На следующем шаге мы вызываем функцию sample(), в которой «my_data» передается случайно выбранным 10 элементам из нее. Затем определяется аргумент «размер», который указывает, что значение для случайного выбора должно иметь размер «10». После этого мы присваиваем «ИСТИНА» аргументу «заменить», что означает, что каждый выбранный элемент заменяется в векторе перед выбором следующего. Третий аргумент, определенный в функции sample(), — это «prob», который определяет вероятность того, что каждый элемент в векторе «my_data» будет выбран. Вероятность первого элемента устанавливается равной «0,5». Для оставшихся четырех элементов вектора вероятность равна «0,1».

Следующие выходные данные извлекаются с наибольшей вероятностью первого элемента в векторах, как и ожидалось:

Пример 6. Использование функции Sample() для рендеринга гистограммы

Наконец, функция sample() используется для построения гистограммы в R для визуализации распределения категориальной переменной с заданным распределением вероятностей.

Пример данных '=' с ( 1 , 2 , 3 )

барплот ( стол ( образец ( Пример данных , размер '=' 500 , заменять '=' истинный , проблема '=' с ( .30 , 0,60 , .10 ) ) ) )

Здесь, после определения «sample_data» с вектором целочисленного значения, мы генерируем гистограмму, используя функцию sample(). Во-первых, мы вызываем гистограмму, которая вызывает функцию table() для создания таблицы частот результирующего образца. Затем мы указываем функцию sample() в функции table(), где случайная выборка размером 1000 берется из вектора целых чисел от 1 до 3. Затем аргумент «prob» используется для указания вероятности выбора каждого целого числа. .

Как мы видим сейчас, гистограмма представлена ​​ниже с тремя столбцами, по одному для каждого целого числа, а высота столбцов соответствует целому числу, которое встречается в образце:

Заключение

Мы видели, как работает функция sample() на различных примерах. Функция sample() используется с различными аргументами, где требуются данные выборки, а все остальные аргументы являются необязательными и вызываются в определенных случаях. Однако функция sample() полезна при статистическом анализе или при работе с большими наборами данных.