আমি নির্জন মৌমাছির প্রাচুর্যের উপর একটি খুব ছোট ডেটা সেট করেছি যা বিশ্লেষণ করতে আমার সমস্যা হচ্ছে। এটি ডেটা গণনা করে এবং প্রায় সমস্ত সংখ্যা অন্যান্য চিকিত্সার বেশিরভাগ শূন্যের সাথে এক চিকিত্সায় থাকে। এছাড়াও খুব উচ্চ মানের একটি দম্পতি রয়েছে (ছয়টি সাইটের দুটিতে একটি করে), সুতরাং গণনাগুলির বিতরণে একটি দীর্ঘ দীর্ঘ লেজ থাকে। আমি আর এ কাজ করছি I আমি দুটি ভিন্ন প্যাকেজ ব্যবহার করেছি: lme4 এবং glmmADMB।
পোইসন মিশ্রিত মডেলগুলি খাপ খায় না: র্যান্ডম এফেক্টগুলি (গ্ল্যাম মডেল) ফিট না করা অবস্থায় মডেলগুলি খুব বেশি মাত্রায় ছড়িয়ে পড়েছিল এবং এলোমেলো প্রভাবগুলি লাগানো হলে (গ্ল্যামার মডেল) আন্ডার ডিসপ্রেসড ছিল। আমি কেন বুঝতে পারছি না। পরীক্ষামূলক ডিজাইন নেস্টেড এলোমেলো প্রভাবগুলির জন্য কল করে যাতে আমার সেগুলি অন্তর্ভুক্ত করা দরকার। একটি পইসন লগনরমাল ত্রুটি বিতরণ ফিটের উন্নতি করতে পারেনি। আমি glmer.nb ব্যবহার করে নেতিবাচক দ্বিপদী ত্রুটি বিতরণের চেষ্টা করেছি এবং এটি ফিট করতে পারিনি - গ্লোমারকন্ট্রোল (টোলপওয়ারস = 1 ই -3) ব্যবহার সহিষ্ণুতা পরিবর্তনের পরেও পুনরাবৃত্তির সীমাটি পৌঁছে গেল।
কারণ অনেকগুলি শূন্য হ'ল এই কারণে যে আমি মৌমাছি দেখতে পাইনি (তারা প্রায়শই ছোট কালো জিনিস থাকে), এরপরে আমি একটি শূন্য-স্ফীত মডেলের চেষ্টা করেছি tried জিপটি ভাল মানায় না। জেডআইএনবি এখনও অবধি সেরা মডেল ফিট, তবে আমি এখনও মডেলটির ফিট নিয়ে খুব খুশি নই। এরপরে কী চেষ্টা করতে হবে তা নিয়ে আমি ক্ষতি করছি। আমি একটি প্রতিবন্ধকতা মডেল চেষ্টা করেছি কিন্তু শূন্য-অ-ফলাফলগুলিতে ছাঁটাই করা বিতরণটি ফিট করতে পারি না – আমার মনে হয় কারণ অনেকগুলি শূন্যই নিয়ন্ত্রণের চিকিত্সায় রয়েছে (ত্রুটি বার্তাটি ছিল "Model.frame.default এ ত্রুটি (সূত্র = s.bee ~ tmt + lu +: পরিবর্তনশীল দৈর্ঘ্য পৃথক ('চিকিত্সা' এর জন্য পাওয়া যায়) ")।
তদতিরিক্ত, আমি মনে করি যে আমি অন্তর্ভুক্ত করা মিথস্ক্রিয়াটি আমার ডেটাগুলিতে কিছুটা অদ্ভুত কাজ করছে কারণ সহগুণগুলি অবাস্তববাদীভাবে ছোট হয় - যদিও আমি প্যাকেজ বিবিএমএলে এআইসিএকটিব ব্যবহার করে মডেলগুলির তুলনা করার সময় ইন্টারঅ্যাকশনযুক্ত মডেলটি সেরা ছিল।
আমি এমন কিছু আর স্ক্রিপ্ট অন্তর্ভুক্ত করছি যা আমার ডেটা সেটটিকে পুনরুত্পাদন করবে। ভেরিয়েবলগুলি নিম্নরূপ:
d = জুলিয়ান তারিখ, ডিএফ = জুলিয়ান তারিখ (ফ্যাক্টর হিসাবে), ডি.এসকিউ = ডিএফ স্কোয়ারড (মৌমাছির সংখ্যা বাড়লে পুরো গ্রীষ্মে পড়ে যায়), সেন্ট = সাইট, এস.বিই = মৌমাছির গণনা, টিএমটি = ট্রিটমেন্ট, লু = জমি ব্যবহারের ধরণ, আশেপাশের প্রাকৃতিক দৃশ্যে হাফ = আধা প্রাকৃতিক আবাসের শতাংশ, বা = সীমানা অঞ্চল গোলাকার ক্ষেত্র।
আমি কীভাবে একটি ভাল মডেল ফিট (বিকল্প ত্রুটি বিতরণ, বিভিন্ন ধরণের মডেল ইত্যাদি) পেতে পারি সে সম্পর্কে কোনও পরামর্শ খুব কৃতজ্ঞতার সাথে গৃহীত হবে!
ধন্যবাদ.
d <- c(80, 80, 121, 121, 180, 180, 86, 86, 116, 116, 144, 144, 74, 74, 143, 143, 163, 163, 71, 71,106, 106, 135, 135, 162, 162, 185, 185, 83, 83, 111, 111, 133, 133, 175, 175, 85, 85, 112, 112,137, 137, 168, 168, 186, 186, 64, 64, 95, 95, 127, 127, 156, 156, 175, 175, 91, 91, 119, 119,120, 120, 148, 148, 56, 56)
df <- as.factor(d)
d.sq <- d^2
st <- factor(rep(c("A", "B", "C", "D", "E", "F"), c(6,12,18,10,14,6)))
s.bee <- c(1,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,0,1,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,3,0,0,0,0,5,0,0,2,0,50,0,10,0,4,0,47,3)
tmt <- factor(c("AF","C","C","AF","AF","C","AF","C","AF","C","C","AF","AF","C","AF","C","AF","C","AF","C",
"C","AF","AF","C","AF","C","C","AF","AF","C","AF","C","AF","C","AF","C","AF","C","AF","C",
"C","AF","AF","C","AF","C","AF","C","AF","C","C","AF","C","AF","C","AF","AF","C","AF","C",
"AF","C","AF","C","AF","C"))
lu <- factor(rep(c("p","a","p","a","p"), c(6,12,28,14,6)))
hab <- rep(c(13,14,13,14,3,4,3,4,3,4,3,4,3,4,15,35,37,35,37,35,37,35,37,0,2,1,2,1,2,1),
c(1,2,2,1,1,1,1,2,2,1,1,1,1,1,18,1,1,1,2,2,1,1,1,14,1,1,1,1,1,1))
ba <- c(480,6520,6520,480,480,6520,855,1603,855,1603,1603,855,855,12526,855,5100,855,5100,2670,7679,7679,2670,
2670,7679,2670,7679,7679,2670,2670,7679,2670,7679,2670,7679,2670,7679,1595,3000,1595,3000,3000,1595,1595,3000,1595
,3000,4860,5460,4860,5460,5460,4860,5460,4860,5460,4860,4840,5460,4840,5460,3000,1410,3000,1410,3000,1410)
data <- data.frame(st,df,d.sq,tmt,lu,hab,ba,s.bee)
with(data, table(s.bee, tmt) )
# below is a much abbreviated summary of attempted models:
library(MASS)
library(lme4)
library(glmmADMB)
library(coefplot2)
###
### POISSON MIXED MODEL
m1 <- glmer(s.bee ~ tmt + lu + hab + (1|st/df), family=poisson)
summary(m1)
resdev<-sum(resid(m1)^2)
mdf<-length(fixef(m1))
rdf<-nrow(data)-mdf
resdev/rdf
# 0.2439303
# underdispersed. ???
###
### NEGATIVE BINOMIAL MIXED MODEL
m2 <- glmer.nb(s.bee ~ tmt + lu + hab + d.sq + (1|st/df))
# iteration limit reached. Can't make a model work.
###
### ZERO-INFLATED POISSON MIXED MODEL
fit_zipoiss <- glmmadmb(s.bee~tmt + lu + hab + ba + d.sq +
tmt:lu +
(1|st/df), data=data,
zeroInflation=TRUE,
family="poisson")
# has to have lots of variables to fit
# anyway Poisson is not a good fit
###
### ZERO-INFLATED NEGATIVE BINOMIAL MIXED MODELS
## BEST FITTING MODEL SO FAR:
fit_zinb <- glmmadmb(s.bee~tmt + lu + hab +
tmt:lu +
(1|st/df),data=data,
zeroInflation=TRUE,
family="nbinom")
summary(fit_zinb)
# coefficients are tiny, something odd going on with the interaction term
# but this was best model in AICctab comparison
# model check plots
qqnorm(resid(fit_zinb))
qqline(resid(fit_zinb))
coefplot2(fit_zinb)
resid_zinb <- resid(fit_zinb , type = "pearson")
hist(resid_zinb)
fitted_zinb <- fitted (fit_zinb)
plot(resid_zinb ~ fitted_zinb)
## MODEL WITHOUT INTERACTION TERM - the coefficients are more realistic:
fit_zinb2 <- glmmadmb(s.bee~tmt + lu + hab +
(1|st/df),data=data,
zeroInflation=TRUE,
family="nbinom")
# model check plots
qqnorm(resid(fit_zinb2))
qqline(resid(fit_zinb2))
coefplot2(fit_zinb2)
resid_zinb2 <- resid(fit_zinb2 , type = "pearson")
hist(resid_zinb2)
fitted_zinb2 <- fitted (fit_zinb2)
plot(resid_zinb2 ~ fitted_zinb2)
# ZINB models are best so far
# but I'm not happy with the model check plots