Форум врачей-аспирантов

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V   1 2 3 >  
Добавить ответ в эту темуОткрыть тему
> Рандомизация в программе Statistica
ЛенвГо ошко
сообщение 11.02.2018 - 14:41
Сообщение #1





Группа: Пользователи
Сообщений: 5
Регистрация: 10.02.2018
Пользователь №: 30973



Добрый день всем участникам форума! Буду очень благодарна, если кто-нибудь поможет мне с решением типовой практической задачи. Имеется выборка из 24 пациентов. Она будет разделена на 2 группы по 12 человек. 12 человек из первой группы в первом периоде исследования будут получать лекарственное средство T, во втором периоде - лекарственное средство R. 12 человек из второй группы в первом периоде исследования будут получать лекарственное средство R, во втором периоде - лекарственное средство T. Мне необходимо с использованием программы Statistica (у меня стоит пробная версия 13) случайным образом распределить 24 человека на 2 группы по 12 (последовательности лечения TR и RT). Подскажите, пожалуйста, как это делается.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
nokh
сообщение 11.02.2018 - 16:02
Сообщение #2





Группа: Пользователи
Сообщений: 1202
Регистрация: 13.01.2008
Из: Челябинск
Пользователь №: 4704



У меня есть заготовка с ответом из выходящего в этом году Лабораторного практикума по биостатистике, но только в Excel - прикрепил. Если нужно сделать именно в Statistica - по аналогии самостоятельно. Там функция генератора случайных чисел - Rnd(). Чтобы веселее работалось - замечательная песня в стиле сайкобилли: Matchless - Randomly Generated Numbers ( https://www.youtube.com/watch?v=Z1tz91d6rZc ).
Прикрепленные файлы
Прикрепленный файл  Rundom_Excel.pdf ( 109,82 килобайт ) Кол-во скачиваний: 456
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
ЛенвГо ошко
сообщение 11.02.2018 - 16:21
Сообщение #3





Группа: Пользователи
Сообщений: 5
Регистрация: 10.02.2018
Пользователь №: 30973



Цитата(nokh @ 11.02.2018 - 16:02) *
У меня есть заготовка с ответом из выходящего в этом году Лабораторного практикума по биостатистике, но только в Excel - прикрепил. Если нужно сделать именно в Statistica - по аналогии самостоятельно. Там функция генератора случайных чисел - Rnd(). Чтобы веселее работалось - замечательная песня в стиле сайкобилли: Matchless - Randomly Generated Numbers ( https://www.youtube.com/watch?v=Z1tz91d6rZc ).



Добрый день! Спасибо за быстрый ответ. Посмотрела Ваш прикрепленный файл. По прежнему не получается сделать то, что нужно. Во-первых, не срабатывает функция Rnd(). Ы ячейке так и остается название функции, а никакое новой число не появляется. Во-вторых, после выделения двух столбцов не нахожу "Сортировка и фильтр" и т.д. Пожалуйста, дайте мне еще подсказку! Очень нужно!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 11.02.2018 - 16:34
Сообщение #4





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Цитата(ЛенвГо ошко @ 11.02.2018 - 14:41) *
Добрый день всем участникам форума! Буду очень благодарна, если кто-нибудь поможет мне с решением типовой практической задачи. Имеется выборка из 24 пациентов. Она будет разделена на 2 группы по 12 человек. 12 человек из первой группы в первом периоде исследования будут получать лекарственное средство T, во втором периоде - лекарственное средство R. 12 человек из второй группы в первом периоде исследования будут получать лекарственное средство R, во втором периоде - лекарственное средство T. Мне необходимо с использованием программы Statistica (у меня стоит пробная версия 13) случайным образом распределить 24 человека на 2 группы по 12 (последовательности лечения TR и RT). Подскажите, пожалуйста, как это делается.


Все нечетные индексы - первая группа, все четные - вторая. Et vice versa.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
ogurtsov
сообщение 11.02.2018 - 22:06
Сообщение #5





Группа: Пользователи
Сообщений: 127
Регистрация: 15.12.2015
Пользователь №: 27760



Цитата(100$ @ 11.02.2018 - 17:34) *
Все нечетные индексы - первая группа, все четные - вторая. Et vice versa.

Это не рандомизация.

Лучше всего использовать https://cran.r-project.org/web/packages/blockrand/index.html


Signature
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 12.02.2018 - 00:08
Сообщение #6





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Цитата(ogurtsov @ 11.02.2018 - 22:06) *
Это не рандомизация.

Лучше всего использовать https://cran.r-project.org/web/packages/blockrand/index.html


Ну, поскольку предварительное упорядочивание единиц ген. совокупности (24 шт.) не проводится, начала отсчета устанавливается в случайном порядке, и объемы выборок равны, то можно предполагать, что систематическая компонента ошибки выборки отсутствует. Именно поэтому при механическом отборе ошибка выборки - та же, что и при собственно случайном отборе. Кроме того, если производить разбрасывание пациентов по выборкам в Экселе по вышеозвученным рецептам ( а-ля =СЛУЧМЕЖДУ(1;24)), то устанешь бороться с задвоениями индексов. И по схеме "Данные" ->"Анализ данных" ->"Выборка" - та же беда.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
DrgLena
сообщение 12.02.2018 - 01:19
Сообщение #7





Группа: Пользователи
Сообщений: 1325
Регистрация: 27.11.2007
Пользователь №: 4573



Вряд ли рандомизация 24 больных может гарантировать однородность групп из 12 пациентов по всем признакам, которые могут влиять на результат клинического исследования.

В программе Statistica тоже есть функция random sampling, data/random sampling

а также https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3942596/


Сообщение отредактировал DrgLena - 12.02.2018 - 01:44
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
nokh
сообщение 12.02.2018 - 04:44
Сообщение #8





Группа: Пользователи
Сообщений: 1202
Регистрация: 13.01.2008
Из: Челябинск
Пользователь №: 4704



Цитата(ЛенвГо ошко @ 11.02.2018 - 18:21) *
...По прежнему не получается сделать то, что нужно. Во-первых, не срабатывает функция Rnd(). Ы ячейке так и остается название функции, а никакое новой число не появляется. Во-вторых, после выделения двух столбцов не нахожу "Сортировка и фильтр" и т.д. Пожалуйста, дайте мне еще подсказку! Очень нужно!

Ну так "по аналогии" не означает "в точности так же". Согласно первому попавшемуся толковому словарю Ефремовой, аналогично - это "основываясь на сходстве с кем-л., чем-либо, по образцу кого-л., чего-л., согласно какой-л. формуле, схеме". Схема-то та же:
(1) первый столбец - числа от 1 до n,
(2) во втором - случайные числа,
(3) сортировка массива по второму столбцу,
(4) назначение нужного количества первых номеров в первую группу.
Про функцию Rnd() нужно было прочитать и догадаться написать хотя бы Rnd(1) чтобы было как в Экселе (хотя выбор числа не принципиален), а сортировку провести в Data - Sort или где она там находится в 13-ой версии (читайте инструкцию к пакету). За желание и попытку провести рандомизацию ставлю вам 5, за несамостоятельность и несообразительность - 2, в среднем пока 3,5 - округлим по результату. Остальные работы ещё не проверял:)
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
DrgLena
сообщение 12.02.2018 - 15:07
Сообщение #9





Группа: Пользователи
Сообщений: 1325
Регистрация: 27.11.2007
Пользователь №: 4573



Задвоение таки да, проблема, не позволяющая использовать on line ресурсы типа:
https://www.randomizer.org/
https://www.random.org/integers/
Программа Statistica из списка 24 объектов отбирает 12 без задвоений, но после этого нужно руками проставлять этим номерам первую группу, а не попавшим в этот список - вторую группу, не удобно, а если групп 3 все еще труднее. Вариант , описанный nokh также без задвоений, но с элементами ручной работы.
А потому, стоит согласиться с ogurtsov, лучше использовать специальные пакеты, тем более, что редакции некоторых научных журналов задают вопросы о методах радомизации, а в специальных пакетах их реализовано очень много, в randomizeR - 15. Я выполнила RAR (Random Allocation Rule) для этой задачке.
https://cran.r-project.org/web/packages/ran...izeR/index.html

> library (randomizeR)
> N <-24
> K <-2
> groups <-c("A", "B")
> rarPar(N, K, groups=groups)
Object of class "rarPar"
design = RAR
N = 24
groups = A B
> groups <-c("A", "B")
> par <-rarPar(N ,K, groups=groups)
> R <-genSeq(par)
> getRandList®
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14]
[1,] "A" "A" "B" "A" "A" "B" "A" "B" "A" "A" "B" "A" "B" "B"
[,15] [,16] [,17] [,18] [,19] [,20] [,21] [,22] [,23] [,24]
[1,] "A" "B" "B" "A" "B" "A" "B" "B" "A" "B"
> saveRand(R, file="D:/R/mylist.doc.csv")

Или просто отчет, там понятней, какому номеру какое лечение.
> This document was generated on Вт фев 13 2018 at 0:03:20 .
The randomizeR package of version 1.4 was used for generating the randomization list with the R version 3.4.3 (2017-11-30) .
Randomization Method: RAR
seed: 967519
N: 24
K: 2
ratio: 1, 1
groups: A, B

Legend:
N := number of included patients
K := number of treatment groups
ratio := allocation ratio of the trial
groups := names for the investigated groups
For specific randomization parameters see the help of the randomizeR package.

"Allocation" "Treatment"
1 "A"
2 "A"
3 "B"
4 "A"
5 "A"
6 "B"
7 "A"
8 "B"
9 "A"
10 "A"
11 "B"
12 "A"
13 "B"
14 "B"
15 "A"
16 "B"
17 "B"
18 "A"
19 "B"
20 "A"
21 "B"
22 "B"
23 "A"
24 "B"
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
passant
сообщение 12.02.2018 - 16:39
Сообщение #10





Группа: Пользователи
Сообщений: 231
Регистрация: 27.04.2016
Пользователь №: 28223



Цитата(nokh @ 11.02.2018 - 16:02) *
У меня есть заготовка с ответом из выходящего в этом году Лабораторного практикума по биостатистике, но только в Excel - прикрепил.

Посмотрел Ваш файл. Как мне кажется, для корректной работы там пропущен один пункт. Между п.3 и п.4. надо вставить превращение динамически генерируемых чисел в статические значения, т.е. выделить оба столбца, выбрать "копировать", потом выбрать"Главная"-> "Вставка"->""специальная вставка" -> "значения"-> OК.
По крайней мере, в последних версиях EXCEL (2007 и выше) так. Иначе, он делает перегенерацию случайных чисел прямо в процессе сортировки.
Второй путь - отключать в настойках EXCEL автоматический пересчет формул, но это уже извращение.
Зная подходы к учебе у студентов, я бы все-таки это вписал в методичку, а то задерут вопросами :-)
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 12.02.2018 - 16:55
Сообщение #11





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Del

Сообщение отредактировал 100$ - 16.02.2018 - 14:19
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
passant
сообщение 12.02.2018 - 17:11
Сообщение #12





Группа: Пользователи
Сообщений: 231
Регистрация: 27.04.2016
Пользователь №: 28223



Цитата(100$ @ 12.02.2018 - 16:55) *
Особенно интересует формула пересчета действительного числа из [0;1] в целый индекс от 1 до 24.

Ну, этого, как раз при предлагаемой методике делать и не надо. Да и не сложно это, кстати. По-крайней мере в этом я за своих студентов спокоен (у меня - ИТ-шники, если что)smile.gif
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 12.02.2018 - 23:09
Сообщение #13





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Del

Сообщение отредактировал 100$ - 16.02.2018 - 14:20
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
nokh
сообщение 12.02.2018 - 23:13
Сообщение #14





Группа: Пользователи
Сообщений: 1202
Регистрация: 13.01.2008
Из: Челябинск
Пользователь №: 4704



Цитата(passant @ 12.02.2018 - 18:39) *
... Зная подходы к учебе у студентов, я бы все-таки это вписал в методичку, а то задерут вопросами :-)

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

У меня тоже есть вопрос к форумчанам по рандомизации. В статьях нередко описывается полная рандомизация, приводящая к разному числу объектов в экспериментальных группах. Зачем это делается? В чём преимущество такой полноты в ущерб мощности?

>100$ Подколки - подколками, но поработав над монографиями я стал иначе относится к авторам "больших" форматов. Имею в виду форматы, которые больше научной статьи. Раньше сам щедро разавал "комплименты" авторам. Когда-то было даже так: принесу странички из книг на занятие и даю задание найти ошибки у авторов по пройденной теме. Сейчас только хвалю хорошие работы, а про слабые просто умалчиваю (к статьям это не относится). Потому что понял, сколько времени и труда нужно авторам хотя бы на то, чтобы скомпиллировать разрозненный материал, не говоря уже о практически полном оригинальном авторском изложении. Когда Практикум выйдет - выложу в открытй доступ. Там не ахти - 16 лабораторных, но зато полностью моё. Ляпы, конечно тоже будут, надеюсь только что не много и не сильных... А за студентов я тоже боюсь, но их калечит не ВУЗовский формат, не преподы, а нереализовавшиеся или гиперреализовавшиеся родители, довузовская система образования и неуверенность в востребованности получаемых знаний для хорошего трудоустройства и карьеры.

Сообщение отредактировал nokh - 13.02.2018 - 01:46
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
DrgLena
сообщение 13.02.2018 - 07:46
Сообщение #15





Группа: Пользователи
Сообщений: 1325
Регистрация: 27.11.2007
Пользователь №: 4573



http://forum.disser.ru/?showtopic=1215 плав о блочной рандомизации 10 лет назад, а также о том как раньше генерировались случайные числа.
Тут частично объясняется различие в величине групп.

Полная рандомизация (СR), если это математическое понятие, а не какая то фишка для придания авторитета своей публикации в угоду моде, подразумевает разделение на группы подобное подбрасыванию монеты. Давайте подбросим 24 раза, не факт, что будет 12 орлов. Благо есть R и уже рекомендованный современный (2017) пакет randomizeR, в котором реализована и CR (complete randоmization)

> N <-24
> groups <-c("A", "B")
> params <-crPar(N)
> (R <- genSeq(params))
Object of class "rCrSeq"
design = CR
seed = 931821603
N = 24
groups = A B
The sequence M:
1 B A B B B A A A A A ...
> getRandList®
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14]
[1,] "B" "A" "B" "B" "B" "A" "A" "A" "A" "A" "A" "A" "B" "B"
[,15] [,16] [,17] [,18] [,19] [,20] [,21] [,22] [,23] [,24]
[1,] "B" "A" "A" "B" "B" "B" "A" "B" "A" "A"
Вот и результат 11:13, в отличие от предыдущей процедуры RAR(random allocation rule), которая выдает равные группы.
Nokh, я опять на родине R, среда располагает к сильному крену в сторону R.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 

3 страниц V   1 2 3 >
Добавить ответ в эту темуОткрыть тему