Как мне выполнить функцию для каждой строки кадра данных и вставить только один элемент вывода в качестве нового столбца в этой строке

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

sens <-seq(from=.1, to=.5, by=0.05)
enroll <-seq(from=20, to=200, by=20)
df <-expand.grid(sens=sens,enroll=enroll)
df <-transform(df,succes=sens*enroll)

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

Меня интересует только верхний предел 95% доверительного интервала биномиального теста. Я хочу, чтобы это единственное число было добавлено во фрейм данных в виде столбца с названием «upper.limit»

. Я подумал о чем-то вроде

binom.test(succes,enroll)$conf.int    

, увы, conf.int дает что-то вроде

[1] 0,1266556 0,2918427
Я создал фреймворк чувствительности тестов, потенциального числа участников исследования, а затем для каждой строки подсчитал, насколько это может быть успешным. Вот код.

sens <-seq(from=.1, to=.5, by=0.05)
enroll <-seq(from=20, to=200, by=20)
df <-expand.grid(sens=sens,enroll=enroll)
df <-transform(df,succes=sens*enroll)

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

Меня интересует только верхний предел 95% доверительного интервала биномиального теста. Я хочу, чтобы это единственное число было добавлено во фрейм данных в виде столбца с названием «upper.limit»

. Я подумал о чем-то вроде

binom.test(succes,enroll)$conf.int    

, увы, conf.int дает что-то вроде

[1] 0,1266556 0,2918427
Я создал фреймворк чувствительности тестов, потенциального числа участников исследования, а затем для каждой строки подсчитал, насколько это может быть успешным. Вот код.

sens <-seq(from=.1, to=.5, by=0.05)
enroll <-seq(from=20, to=200, by=20)
df <-expand.grid(sens=sens,enroll=enroll)
df <-transform(df,succes=sens*enroll)

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

Меня интересует только верхний предел 95% доверительного интервала биномиального теста. Я хочу, чтобы это единственное число было добавлено во фрейм данных в виде столбца с названием «upper.limit»

Я подумал о чем-то вроде

binom.test(succes,enroll)$conf.int    

, увы, conf.int дает что-то вроде

[1] 0,1266556 0,2918427
s сочетание успехов и количества попыток для выполнения биномиального теста.

Меня интересует только верхний предел 95% доверительного интервала биномиального теста. Я хочу, чтобы это единственное число было добавлено во фрейм данных в виде столбца с названием «upper.limit»

Я подумал о чем-то вроде

binom.test(succes,enroll)$conf.int    

, увы, conf.int дает что-то вроде

[1] 0,1266556 0,2918427
s сочетание успехов и количества попыток для выполнения биномиального теста.

Меня интересует только верхний предел 95% доверительного интервала биномиального теста. Я хочу, чтобы это единственное число было добавлено во фрейм данных в виде столбца с названием «upper.limit»

Я подумал о чем-то вроде

binom.test(succes,enroll)$conf.int    

, увы, conf.int дает что-то вроде

[1] 0,1266556 0,2918427
attr (, "conf.level")
[1] 0,95

Все, что мне нужно, это 0,2918427

Кроме того, у меня есть ощущение, что где-то там должен быть do.call и, возможно, даже lapply, но я не знать, как это будет проходить через весь фрейм данных. Или мне лучше использовать плир?

Ясно, что голова у меня кружится. Пожалуйста, остановите это.

5
задан Farrel 30 October 2012 в 00:59
поделиться