2015-08-08 5 views
0

Я пытаюсь написать часть программного обеспечения в R, которая находит наиболее подходящее семейство дистрибутивов для набора данных, выполняя тест на квадрат с четными данными (по отношению к указанному семейству) и находя лучший хи-квадрат стоимость.Как получить результаты теста на чистоту в чи-квадрат с использованием хорошего настроения?

Однако при использовании функции goodfit, казалось бы, единственный способ получить статистику хи-квадрат - это запустить функцию и использовать команду summary (gf). Это приводит только к считываемому человеком выводу, и мне нужно что-то, что я могу сделать в виде gf $ chisqvalue, чтобы я мог сравнить его с результатами других тестов, которые я запускаю. Есть ли способ получить эту статистику как переменную?

+1

Не могли бы вы предоставить [воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)? кажется, что это всего лишь вопрос подмножества, но без фрагмента кода или функций, которые вы использовали, очень сложно читать ваши мысли, пытаться угадать и предлагать пакеты и/или способы делать что-то, что может быть даже бесполезно для вас. – SabDeM

+0

Hi SabDem. Спасибо за предложение; мой код немного беспорядочен в данный момент, поэтому я не отправляю свой пример прямо с места в карьер. К счастью, решение AntoniosK работает отлично, и я рекомендую его для всех, кто в подобной ситуации! – Martin

ответ

3

Попробуйте пакет метлы и команду «аккуратным», как это:

library(vcd) 
library(broom) 

x <- rnbinom(200, size = 3, prob = 0.2) 
res <- goodfit(x, type = "nbinomial", method = "MinChisq") 
summary(res) 

dt_res = tidy(summary(res)) 

Это позволит получить информацию удобочитаемый и сохранить его в data.frame. Возможно, вы захотите изменить имена столбцов после (или, возможно, нет). Брум-пакет замечательный, если вы хотите создать data.frame из статистического теста или вывода модели.

+0

Собираюсь попробовать, когда я вернусь домой и посмотрю, работает ли это. Спасибо! – Martin

+0

Добро пожаловать. Вы обнаружите, что этот пакет очень полезен, если вы имеете дело с такими ситуациями все время. Вот ссылка: https://cran.r-project.org/web/packages/broom/vignettes/broom.html – AntoniosK

+0

После небольшой проблемы (я запускал R 3.0.2, которая не поддерживает метлу) мне удалось установить его и опробовать; он работает блестяще! Еще один вопрос; есть ли способ работать аккуратно (summary (res)) без R, дающего вывод? Другими словами, аккуратно выполняйте и сохраняйте результаты в кадре данных без фактического вывода итогового резюме? И да, это определенно пакет, который я вижу в дальнейшем в проекте. Еще раз спасибо! – Martin