মন্তব্যগুলিতে আপনার "" মডেল 2 থেকে এটিএমিকে কীভাবে আউট করা যায় তা ভাবতে অবাক "আমি এই প্রশ্নের উত্তর দিচ্ছি:
প্রথমত, আপনার মডেল 2 এ, সমস্ত সনাক্তযোগ্য নয় যা ডিজাইনের ম্যাট্রিক্সে র্যাঙ্কের ঘাটতিজনিত সমস্যার দিকে নিয়ে যায়। উদাহরণস্বরূপ, জন্য ধরে ধরে এক স্তর ছাড়তে হবে । এটি হ'ল, কনট্রাস্ট কোডিংটি ব্যবহার করে এবং 1 পিরিয়ডে চিকিত্সার প্রভাবটি 0 হিসাবে ধরে নেওয়া উচিত। আর এর মধ্যে, এটি 1 সময়কালে চিকিত্সা প্রভাবের সাথে ইন্টারঅ্যাকশন শব্দটিকে রেফারেন্স স্তর হিসাবে কোড করবে, এবং এটিই কারণ সময়ের 1. এসএএস চিকিৎসাধীন প্রভাব ব্যাখ্যা আছে, এটা সময়ের চিকিৎসাধীন প্রভাব কোড হবে রেফারেন্স স্তর, তারপর যেমন সময়ের চিকিৎসাধীন প্রভাব ব্যাখ্যা করেছেনγঞγঞ= 0j = 1β~মিβ~মি, আর 1 পিরিয়ড নয়।
কনট্রাস্টটি আর-এর মাধ্যমে তৈরি হয়েছে বলে ধরে নেওয়া হচ্ছে, তারপরে প্রতিটি ইন্টারঅ্যাকশন টার্মের জন্য (আমি এখনও এটি দ্বারা বোঝাতে , যদিও এটি আপনি আপনার মডেলটিতে সংজ্ঞায়িত করেছেন তা ঠিক নয়) সময়সীমার মধ্যে চিকিত্সা প্রভাবের পার্থক্যের ব্যাখ্যা রয়েছে এবং সময়কাল ১. প্রতিটি পিরিয়ডে , তারপরে জন্য । সুতরাং জন্য একটি অনুমানকারী হ'ল । (সত্য প্যারামিটার এবং অনুমানকারীর মধ্যে স্বরলিপি পার্থক্য উপেক্ষা করা কারণ অলসতা) এবং স্বাভাবিকভাবেই আপনারγঞঞএ টি ইঞγঞ=এ টি ইঞ-এ টি ই1j = 2 , … , মিএ টি ইঞβ~+ +γঞএ টি ই =β=1মিΣমিj = 1এ টি ইঞ=β~+ (β~+ +γ2) + ⋯ + (β~+ +γমি)মি=β~+ +1মি(γ2+ ⋯ +γমি) ।
এটি যাচাই করতে আমি আর-তে একটি সাধারণ সিমুলেশন করেছি:
set.seed(1234)
time <- 4
n <-2000
trt.period <- c(2,3,4,5) #ATE=3.5
kj <- c(1,2,3,4)
intercept <- rep(rnorm(n, 1, 1), each=time)
eij <- rnorm(n*time, 0, 1.5)
trt <- rep(c(rep(0,n/2),rep(1,n/2)), each=time)
y <- intercept + trt*(rep(trt.period, n))+rep(kj,n)+eij
sim.data <- data.frame(id=rep(1:n, each=time), period=factor(rep(1:time, n)), y=y, trt=factor(trt))
library(lme4)
fit.model1 <- lmer(y~trt+(1|id), data=sim.data)
beta <- getME(fit.model1, "fixef")["trt1"]
fit.model2 <- lmer(y~trt*period + (1|id), data=sim.data)
beta_t <- getME(fit.model2, "fixef")["trt1"]
gamma_j <- getME(fit.model2, "fixef")[c("trt1:period2","trt1:period3","trt1:period4")]
results <-c(beta, beta_t+sum(gamma_j)/time)
names(results)<-c("ATE.m1", "ATE.m2")
print(results)
এবং ফলাফল এটি যাচাই করে:
ATE.m1 ATE.m2
3.549213 3.549213
আমি জানি না উপরের মডেল ২ তে সরাসরি কনট্রাস্ট কোডিং কীভাবে পরিবর্তন করতে হয়, সুতরাং যেভাবে কোনও সরাসরি ইন্টারঅ্যাকশন শর্তাদির লিনিয়ার ফাংশনটি ব্যবহার করতে পারে, সেইসাথে স্ট্যান্ডার্ড ত্রুটি কীভাবে পাওয়া যায়, তা বোঝাতে আমি মাল্টকম্প প্যাকেজটি ব্যবহার করেছি:
sim.data$tp <- interaction(sim.data$trt, sim.data$period)
fit.model3 <- lmer(y~tp+ (1|id), data=sim.data)
library(multcomp)
# w= tp.1.1 + (tp.2.1-tp.2.0)+(tp.3.1-tp.3.0)+(tp.4.1-tp.4.0)
# tp.x.y=interaction effect of period x and treatment y
w <- matrix(c(0, 1,-1,1,-1,1,-1,1)/time,nrow=1)
names(w)<- names(getME(fit.model3,"fixef"))
xx <- glht(fit.model3, linfct=w)
summary(xx)
এবং এখানে ফলাফল:
Simultaneous Tests for General Linear Hypotheses
Fit: lmer(formula = y ~ tp + (1 | id), data = sim.data)
Linear Hypotheses:
Estimate Std. Error z value Pr(>|z|)
1 == 0 3.54921 0.05589 63.51 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Adjusted p values reported -- single-step method)
আমি মান ত্রুটি দ্বারা প্রাপ্ত হয় মনে সঙ্গে রৈখিক সমন্বয় ফর্ম এবং উপরে হচ্ছে আনুমানিক ভ্যারিয়েন্স-সহভেদাংক মডেল 3 থেকে কোফিসিয়েন্টস ম্যাট্রিক্স।Wভী^Wটি-----√Wভী
বিচ্যুতি কোডিং
make করার আরও একটি উপায় of এর সরাসরি ব্যাখ্যা থাকায় হ'ল বিচ্যুতি কোডিং ব্যবহার করা , যাতে পরবর্তীকালে তুলনা উপস্থাপন করে:β~এ টি ইএ টি ইঞ- এ টি ই
sim.data$p2vsmean <- 0
sim.data$p3vsmean <- 0
sim.data$p4vsmean <- 0
sim.data$p2vsmean[sim.data$period==2 & sim.data$trt==1] <- 1
sim.data$p3vsmean[sim.data$period==3 & sim.data$trt==1] <- 1
sim.data$p4vsmean[sim.data$period==4 & sim.data$trt==1] <- 1
sim.data$p2vsmean[sim.data$period==1 & sim.data$trt==1] <- -1
sim.data$p3vsmean[sim.data$period==1 & sim.data$trt==1] <- -1
sim.data$p4vsmean[sim.data$period==1 & sim.data$trt==1] <- -1
fit.model4 <- lmer(y~trt+p2vsmean+p3vsmean+p4vsmean+ (1|id), data=sim.data)
আউটপুট:
Fixed effects:
Estimate Std. Error t value
(Intercept) 3.48308 0.03952 88.14
trt1 3.54921 0.05589 63.51
p2vsmean -1.14774 0.04720 -24.32
p3vsmean 1.11729 0.04720 23.67
p4vsmean 3.01025 0.04720 63.77