使用零通胀回归和零通胀负二项式回归趋势

时间:2017-01-28 10:27:12

标签: r

我正在使用零膨胀泊松(zip)和零膨胀负二项式(zinb)回归来检测计数数据(在6家医院报告的30年每年死亡)的时间趋势,其可能为零和过度离散。 我使用pscl package编写了一些代码,我的目标是比较医院之间的趋势。

public void doLogin(AuthCredentials credentials) {
     myDisposableObserver = new DisposableObserver<Account>() {
                @Override
                public void onNext(Account account) {
                    eventBus.post(new LoginSuccessfulEvent(account));
                }

                @Override
                public void onError(Throwable e) {
                    if (isViewAttached()) {
                        getView().showError();
                    }
                }

                @Override
                public void onComplete() {
                    if (isViewAttached()) {
                        getView().loginSuccessful();
                    }
                }
            };

            // do login
            accountManager.doLogin(credentials)
                .subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(subscriber);
        }
    }

    private void cancelSubscriptionToMyPrescriptorManager() {
        if (myDisposableObserver != null && !myDisposableObserver.isDisposed()) {
            myDisposableObserver.dispose();
        }
    }   

但是,当我绘制一些数据时,它显示出略微增加的趋势,而zip和zinb显示负面趋势

以下是一个例子:

zip结果:

Counts<- read.csv("data.csv", header = T)
Years= Counts$X
Ho1= Counts$Ho1
Ho2= Counts$Ho2
Ho3= Counts$Ho3
...  .........
... ..........
require(pscl)

zip1 <- zeroinfl(Ho1 ~ Years, dist = "poisson")

zinb4 <- zeroinfl(Ho4 ~ Years, dist = "negbin")

对于该模型,趋势(斜率)是-0.235,当我使用普通最小二乘(OLS)时,趋势= 0.043。 我的理解是zip和OLS应该略有不同。

所以我想也许我的代码不正确或者我遗漏了一些东西。

我很感激任何想法和建议

1 个答案:

答案 0 :(得分:0)

随着Years的增加,你会得到越来越多的计数(=更高的响应和更少的零)你会减少零通胀(=更高的响应和更少的零)。因此,模型的两个组件中的效果似乎是同步的,并与您的OLS结果一致。