Я пытаюсь построить функцию, которая упростит процесс тестирования на гетероскедастичность в r. Я пытаюсь использовать функцию bptest и объединить ее с функцией if для выполнения теста хи-квадрат. Тем не менее, тест bp предоставляет несколько выходов, есть ли способ, которым я могу изолировать статистику bp от теста bp, чтобы я мог использовать ее как вход в функцию if-else?
Я пытался изолироватьвывод статистики bp с использованием символа равенства, но (как я и ожидал) это не сработало.
BPTest<-function(M,df,cf){
TS<-bptest(M)
Chi2<-qchisq(cf,df=df)
if(TS>Chi2){
print("Reject the null hypothesis and conclude that heteroskedasticity is present.")
}else{
print("Do not reject the null hypothesis. Conclude that heteroskedasticity is not present.")
}
}
Если этот код позволит мне ввести модель, уровень достоверности и степени свободы, а затем предоставить вывод, который указывает, существует ли гетероскедастичность, что было бы здорово. Я знаю, что это было бы чрезвычайно просто сделать вручную, однако я новичок в r и чувствую, что решение этой проблемы откроет много других проблем, с которыми я сталкиваюсь в других областях. В настоящее время появляется сообщение об ошибке, указывающее
Warning messages:
1: In BPTest(ModelQ2, 0.95, 1) : NAs introduced by coercion
2: In BPTest(ModelQ2, 0.95, 1) : NAs introduced by coercion
3: In if (TS > Chi2) { :
the condition has length > 1 and only the first element will be used.
Это также подтверждает отсутствие гетероскедастичности, когда я знаю, что она существует. Спасибо