Расчет размера выборки, нет ли ошибки в расчетах |
Здравствуйте, гость ( Вход | Регистрация )
Расчет размера выборки, нет ли ошибки в расчетах |
14.11.2019 - 16:44
Сообщение
#1
|
|
Группа: Пользователи Сообщений: 8 Регистрация: 14.11.2019 Пользователь №: 36891 |
Здравствуйте!
При расчете размера выборки возникли сложности. Мы считаем, что клинически значимая разница в кровопотере составляет 200 мл (получается delta = 200 ?) Стандартное отклонение составляет 40. Формула R: power.t.test(delta = 200, sd = 50, sig.level = 0.05, power = .90) Результат: Two-sample t test power calculation n = 2.726721 delta = 200 sd = 50 sig.level = 0.05 power = 0.9 alternative = two.sided Выходит, что в каждой группе может быть по 3 человека? Ведь в таком случае будет страдать репрезентативность. Прошу помочь разобраться. |
|
15.11.2019 - 02:02
Сообщение
#2
|
|
Группа: Пользователи Сообщений: 1091 Регистрация: 26.08.2010 Пользователь №: 22699 |
Здравствуйте! При расчете размера выборки возникли сложности. Мы считаем, что клинически значимая разница в кровопотере составляет 200 мл (получается delta = 200 ?) Стандартное отклонение составляет 40. Формула R: power.t.test(delta = 200, sd = 50, sig.level = 0.05, power = .90) Результат: Two-sample t test power calculation n = 2.726721 delta = 200 sd = 50 sig.level = 0.05 power = 0.9 alternative = two.sided Выходит, что в каждой группе может быть по 3 человека? Ведь в таком случае будет страдать репрезентативность. Прошу помочь разобраться. Размер эффекта больше единицы, скажите спасибо что нафиг не послала как другие калькуляторы с такими запросами. Доверительный интервал фактически 4-е сигмы. PS А с репрезентативностью всё будет хорошо, что бы получить оценку гарантирующую sd в генсовокупности минимум заявленной величины, группы будут достаточно большие. |
|
15.11.2019 - 14:53
Сообщение
#3
|
|
Группа: Пользователи Сообщений: 8 Регистрация: 14.11.2019 Пользователь №: 36891 |
Размер эффекта больше единицы, скажите спасибо что нафиг не послала как другие калькуляторы с такими запросами. Доверительный интервал фактически 4-е сигмы. PS А с репрезентативностью всё будет хорошо, что бы получить оценку гарантирующую sd в генсовокупности минимум заявленной величины, группы будут достаточно большие. Возможно у меня возникла путаница по теории эксперимента. В качестве дельты мы указываем свои представления о минимально допустимом клиническом эффекте при котором мы будем считать метод воздействия эффективным (разница между группами). Или мы должны обязательно опираться на предыдущие исследования (что, очевидно, не всегда возможно)? Стандартное отклонение тоже мы должны брать из предыдущих исследований. Можно ли дельту указывать самим, а sd брать из литературы? Существует ли какая-либо практика в этом отношении? Например на сайте pubhealth.spb.ru существует пример описания расчета выборки: "Для выявления различий в 5 баллов по шкале суицидальных тенденций Бека на 5% уровне значимости с 80% мощностью, принимая стандартное отклонение равным 7.7 баллам, потребуется 38 человек в группу вмешательства и контроля. Это число было увеличено до 60 в группе (общее количество наблюдений 120), для того, чтобы компенсировать потери при наблюдении, составляющие обычно около трети обследуемых" В моем случае было бы(?): Для выявления различия кровопотери в 200 мл на 5% уровне значимости с 80% мощностью, принимая стандартное отклонение равным 50 мл, потребуется 3 человек в группу вмешательства и контроля. |
|
15.11.2019 - 21:22
Сообщение
#4
|
|
Группа: Пользователи Сообщений: 1091 Регистрация: 26.08.2010 Пользователь №: 22699 |
Для выявления различия кровопотери в 200 мл на 5% уровне значимости с 80% мощностью, принимая стандартное отклонение равным 50 мл, потребуется 3 человек в группу вмешательства и контроля. sd (как и доказательство что у нас вообще стьюдент в качестве распределения) надо получить, в виде доверительного интервала на выборке, из той же генсовокупности на которой будет основной эксперимент. Берем верхнюю границу, и по ней считаем, тогда действительно можно различить (как наименьший) выбранный размер эффекта с заданными ошибками первого и второго рода. Даже на таких малых группах. Наверное надо брать большой контроль и на нем доказывать наличие предполагаемого распределения и вычислять доверительный интервал для sd. А эксперимент может быть хоть одиночное значение, но которое выйдет за 3-4 сигмы доверительного интервала для контроля. Клинически значимая величина это обычно то, что без сомнения "глазом видно", поэтому и дает оценку что трех случаев достаточно. Вообще 200 мл кровопотеря на фоне 500 мл дающих вполне возможно коллапс гемодинамики, это очень много для эффекта, который надо искать по срабатыванию настроенного p-value теста. |
|
18.11.2019 - 09:24
Сообщение
#5
|
|
Группа: Пользователи Сообщений: 8 Регистрация: 14.11.2019 Пользователь №: 36891 |
sd (как и доказательство что у нас вообще стьюдент в качестве распределения) надо получить, в виде доверительного интервала на выборке, из той же генсовокупности на которой будет основной эксперимент. Берем верхнюю границу, и по ней считаем, тогда действительно можно различить (как наименьший) выбранный размер эффекта с заданными ошибками первого и второго рода. Даже на таких малых группах. Наверное надо брать большой контроль и на нем доказывать наличие предполагаемого распределения и вычислять доверительный интервал для sd. А эксперимент может быть хоть одиночное значение, но которое выйдет за 3-4 сигмы доверительного интервала для контроля. Клинически значимая величина это обычно то, что без сомнения "глазом видно", поэтому и дает оценку что трех случаев достаточно. Вообще 200 мл кровопотеря на фоне 500 мл дающих вполне возможно коллапс гемодинамики, это очень много для эффекта, который надо искать по срабатыванию настроенного p-value теста. Спасибо за ваши ценные комментарии! |
|
18.11.2019 - 22:01
Сообщение
#6
|
|
Группа: Пользователи Сообщений: 127 Регистрация: 15.12.2015 Пользователь №: 27760 |
Мы считаем, что клинически значимая разница в кровопотере составляет 200 мл (получается delta = 200 ?) В такой формулировке получается, что нижняя граница доверительного интервала для разности средних или медиан должны быть не меньше 200. И тогда дальнейшие расчеты размера выборки неверны; для правильного варианта нужно дополнительно задать мощность, ожидаемую величину различий (очевидно, она должна быть больше 200 - я взял для примера 220 мл) и пропорцию между размерами групп. Код > n = TrialSize::TwoSampleMean.NIS(0.05, 0.2, 40, 1, 200, 220) > ceiling(n) [1] 50 Но цифры какие-то баснословные, почти половина донорского объема (450 мл) - очень серьезная разница. Сообщение отредактировал ogurtsov - 18.11.2019 - 22:09 |
|
20.11.2019 - 13:29
Сообщение
#7
|
|
Группа: Пользователи Сообщений: 1091 Регистрация: 26.08.2010 Пользователь №: 22699 |
Код > quantile(replicate(100000, mean(rnorm(3, mean = 400, sd = 50)) - mean(rnorm(3, mean = 400+200, sd = 50))), probs=c(0.025,0.5,0.975)) 2.5% 50% 97.5% -279.7164 -199.9725 -120.1604 > quantile(replicate(100000, mean(rnorm(3, mean = 400, sd = 50)) - mean(rnorm(3, mean = 400+200, sd = 50))), probs=c(0.025,0.5,0.975)) 2.5% 50% 97.5% -279.9967 -200.1365 -120.2151 > quantile(replicate(100000, mean(rnorm(2, mean = 400, sd = 50)) - mean(rnorm(2, mean = 400+200, sd = 50))), probs=c(0.025,0.5,0.975)) 2.5% 50% 97.5% -297.6608 -199.9111 -102.1518 > quantile(replicate(100000, mean(rnorm(2, mean = 400, sd = 50)) - mean(rnorm(2, mean = 400+200, sd = 50))), probs=c(0.025,0.5,0.975)) 2.5% 50% 97.5% -298.6200 -200.1311 -101.9544 Код > table(replicate(1000000, mean(rnorm(3, mean = 400, sd = 50)) - mean(rnorm(3, mean = 400+200, sd = 50)))>0 ) FALSE 1000000 > table(replicate(1000000, mean(rnorm(3, mean = 400, sd = 50)) - mean(rnorm(3, mean = 400+200, sd = 50)))>0 ) FALSE 1000000 > table(replicate(1000000, mean(rnorm(3, mean = 400, sd = 50)) - mean(rnorm(3, mean = 400+200, sd = 50)))>0 ) FALSE TRUE 999999 1 > table(replicate(1000000, mean(rnorm(2, mean = 400, sd = 50)) - mean(rnorm(2, mean = 400+200, sd = 50)))>0 ) FALSE TRUE 999975 25 > table(replicate(1000000, mean(rnorm(2, mean = 400, sd = 50)) - mean(rnorm(2, mean = 400+200, sd = 50)))>0 ) FALSE TRUE 999961 39 > table(replicate(1000000, mean(rnorm(2, mean = 400, sd = 50)) - mean(rnorm(2, mean = 400+200, sd = 50)))>0 ) FALSE TRUE 999981 19 > table(replicate(10000000, mean(rnorm(3, mean = 400, sd = 50)) - mean(rnorm(3, mean = 400+200, sd = 50)))>0 ) FALSE TRUE 9999994 6 четыре сигмы, это четыре сигмы (лучше только пять ) |
|
25.11.2019 - 14:19
Сообщение
#8
|
|
Группа: Пользователи Сообщений: 8 Регистрация: 14.11.2019 Пользователь №: 36891 |
|
|
26.11.2019 - 09:53
Сообщение
#9
|
|
Группа: Пользователи Сообщений: 1091 Регистрация: 26.08.2010 Пользователь №: 22699 |
Тут принципиальный вопрос.
1) Или мы проверяем факт, что средние двух выборок отличаются друг от друга на 200 мл и более (настраивая условия теста p-value "он может заметить и не пропустить только 200 и более" и говоря тест прошел, значит ОК) 2) Или мы говорим "в доверительный интервал при средней выборки с кровопотерей не попадает фиксированная граница кровопотери 200 мл". При этом придумывая что матожидание в экспериментальной выборке равно 200+"конкретная дельта". Во втором случае можно и 50 человек смоделировать и 150. Все зависит как близко мы ожидаем среднее значение в эксперименте к границе при данной сигме. Для случая "среднее равно или больше заданной границы" мы ничего корректно ответить не можем из самой постановки, размер группы будет "уходить в бесконечность". Думаю p-value тест именно такую постановку и призван разрешать, а в конкретном случае надо просто понизить ошибки первого и второго рода (то есть фактически повысить качество исследования) задав размеры групп достаточные для подтверждения гипотезы о распределении данных. PS Если распределение окажется не приводимом к нормальному, то останется возможность посчитать распределение средних в группах бутсрепом и сравнить с границей 200 мл перцентили этих распределений. |
|