ডেটা অন্বেষণ করতে কিছু প্লট
নীচে আটটি পৃষ্ঠার পরিচিতির প্রতিটি সংখ্যার জন্য একটি, জাই প্লটগুলি গ্লোভগুলি বনাম কোনও গ্লোভস দেখাচ্ছে showing
প্রতিটি ব্যক্তি একটি বিন্দু দিয়ে চক্রান্ত করা হয়। গড় এবং প্রকরণ এবং সমবায়তা একটি লাল বিন্দু এবং উপবৃত্ত (জনসংখ্যার 97.5% এর সাথে মিলিত মহালানোবিস দূরত্ব) দ্বারা নির্দেশিত হয়।
আপনি দেখতে পাচ্ছেন যে জনসংখ্যার বিস্তারের তুলনায় প্রভাবগুলি কেবলমাত্র কম। গড়টি 'কোনও গ্লাভস' এর জন্য উচ্চতর নয় এবং আরও তলদেশের পরিচিতিগুলির জন্য গড় কিছুটা বেশি উপরে পরিবর্তিত হবে (যা তাৎপর্যপূর্ণ হিসাবে দেখানো যেতে পারে)। তবে প্রভাবটি আকারে খুব সামান্যই (সামগ্রিকভাবে একটি লগ হ্রাস), এবং গ্লোভগুলির সাথে প্রকৃতপক্ষে উচ্চতর ব্যাকটিরিয়া রয়েছে এমন ব্যক্তিদের জন্য অনেক ব্যক্তি রয়েছেন ।14
ছোট পারস্পরিক সম্পর্কটি দেখায় যে প্রকৃতপক্ষে ব্যক্তিদের থেকে একটি এলোমেলো প্রভাব রয়েছে (যদি কোনও ব্যক্তির পক্ষ থেকে কোনও প্রভাব না আসে তবে জোড়যুক্ত গ্লাভস এবং কোনও গ্লোভের মধ্যে কোনও সম্পর্ক নেই)। তবে এটি কেবলমাত্র একটি ছোট প্রভাব এবং 'গ্লোভস' এবং 'নো গ্লোভস' এর জন্য কোনও ব্যক্তির বিভিন্ন র্যান্ডম এফেক্ট থাকতে পারে (যেমন সমস্ত ভিন্ন যোগাযোগের পয়েন্টের জন্য ব্যক্তি 'গ্লোভস' না 'গ্লোভস' এর চেয়ে ধারাবাহিকভাবে উচ্চ / নিম্ন গননা থাকতে পারে) ।
প্লটের নীচে 35 জন ব্যক্তির প্রত্যেকের জন্য পৃথক প্লট রয়েছে। এই প্লটটির ধারণাটি হ'ল আচরণটি একজাতীয় কিনা এবং এটি কী ধরণের কার্যকারিতা উপযুক্ত বলে মনে হয় তাও দেখার জন্য।
মনে রাখবেন যে 'গ্লোভস ছাড়াই' লাল in বেশিরভাগ ক্ষেত্রে লাল রেখা বেশি, 'গ্লোভস ছাড়াই' ক্ষেত্রে আরও ব্যাকটিরিয়া থাকে।
আমি বিশ্বাস করি যে এখানে ট্রেন্ডগুলি ক্যাপচার করার জন্য একটি লিনিয়ার প্লট যথেষ্ট হওয়া উচিত। চতুষ্কোণ চক্রান্তের অসুবিধাটি হ'ল গুণাগুণগুলি ব্যাখ্যা করা আরও কঠিন হবে (directlyালটি ইতিবাচক বা নেতিবাচক কিনা আপনি সরাসরি দেখতে পাচ্ছেন না কারণ লিনিয়ার টার্ম এবং চতুর্ভুজ শব্দ দুটিই এর উপর প্রভাব ফেলে) on
তবে আরও গুরুত্বপূর্ণ আপনি দেখতে পাচ্ছেন যে প্রবণতাগুলি বিভিন্ন ব্যক্তিদের মধ্যে প্রচুর পরিমাণে পৃথক হয় এবং তাই কেবল বিরতি নয়, ব্যক্তির theালু ক্ষেত্রেও এলোমেলো প্রভাব যুক্ত করা কার্যকর হতে পারে।
মডেল
নীচে মডেল সহ
- প্রতিটি স্বতন্ত্র নিজস্ব বক্ররেখা লাগবে (রৈখিক সহগের জন্য এলোমেলো প্রভাব)।
- মডেলটি লগ-ট্রান্সফর্মড ডেটা ব্যবহার করে এবং একটি নিয়মিত (গাউসিয়ান) লিনিয়ার মডেলের সাথে ফিট করে। মন্তব্যে অ্যামিবা উল্লেখ করেছেন যে লগ লিঙ্ক কোনও লগনারাল বিতরণের সাথে সম্পর্কিত নয়। তবে এটি ভিন্ন। থেকে ভিন্নy∼N(log(μ),σ2)log(y)∼N(μ,σ2)
- ওজন প্রয়োগ করা হয় কারণ ডেটা হিটারোস্কেস্টাস্টিক। প্রকরণটি উচ্চ সংখ্যার দিকে আরও সংকীর্ণ। এটি সম্ভবত কারণ ব্যাকটিরিয়া গণনার কিছু সিলিং রয়েছে এবং তারতম্যটি বেশিরভাগ ক্ষেত্রে পৃষ্ঠ থেকে আঙুলের ব্যর্থ সংক্রমণ (= নিম্ন মানের সাথে সম্পর্কিত) ব্যর্থতার কারণে ঘটে। ৩৫ টি প্লটেও দেখুন। প্রধানত কয়েকটি ব্যক্তি রয়েছেন যার জন্য ভিন্নতা অন্যদের তুলনায় অনেক বেশি। (আমরা কিউকিউ প্লটগুলিতে আরও বড় লেজ, ওভারডিস্পেরেশনও দেখি)
- কোনও বিরতি শব্দ ব্যবহার করা হয় না এবং একটি 'বিপরীতে' শব্দ যুক্ত করা হয়। সহগের ব্যাখ্যা করতে সহজ করার জন্য এটি করা হয়।
।
K <- read.csv("~/Downloads/K.txt", sep="")
data <- K[K$Surface == 'P',]
Contactsnumber <- data$NumberContacts
Contactscontrast <- data$NumberContacts * (1-2*(data$Gloves == 'U'))
data <- cbind(data, Contactsnumber, Contactscontrast)
m <- lmer(log10CFU ~ 0 + Gloves + Contactsnumber + Contactscontrast +
(0 + Gloves + Contactsnumber + Contactscontrast|Participant) ,
data=data, weights = data$log10CFU)
এই দেয়
> summary(m)
Linear mixed model fit by REML ['lmerMod']
Formula: log10CFU ~ 0 + Gloves + Contactsnumber + Contactscontrast + (0 +
Gloves + Contactsnumber + Contactscontrast | Participant)
Data: data
Weights: data$log10CFU
REML criterion at convergence: 180.8
Scaled residuals:
Min 1Q Median 3Q Max
-3.0972 -0.5141 0.0500 0.5448 5.1193
Random effects:
Groups Name Variance Std.Dev. Corr
Participant GlovesG 0.1242953 0.35256
GlovesU 0.0542441 0.23290 0.03
Contactsnumber 0.0007191 0.02682 -0.60 -0.13
Contactscontrast 0.0009701 0.03115 -0.70 0.49 0.51
Residual 0.2496486 0.49965
Number of obs: 560, groups: Participant, 35
Fixed effects:
Estimate Std. Error t value
GlovesG 4.203829 0.067646 62.14
GlovesU 4.363972 0.050226 86.89
Contactsnumber 0.043916 0.006308 6.96
Contactscontrast -0.007464 0.006854 -1.09
প্লট প্রাপ্ত করার কোড
কেমোমেট্রিক্স :: ড্রমহল ফাংশন
# editted from chemometrics::drawMahal
drawelipse <- function (x, center, covariance, quantile = c(0.975, 0.75, 0.5,
0.25), m = 1000, lwdcrit = 1, ...)
{
me <- center
covm <- covariance
cov.svd <- svd(covm, nv = 0)
r <- cov.svd[["u"]] %*% diag(sqrt(cov.svd[["d"]]))
alphamd <- sqrt(qchisq(quantile, 2))
lalpha <- length(alphamd)
for (j in 1:lalpha) {
e1md <- cos(c(0:m)/m * 2 * pi) * alphamd[j]
e2md <- sin(c(0:m)/m * 2 * pi) * alphamd[j]
emd <- cbind(e1md, e2md)
ttmd <- t(r %*% t(emd)) + rep(1, m + 1) %o% me
# if (j == 1) {
# xmax <- max(c(x[, 1], ttmd[, 1]))
# xmin <- min(c(x[, 1], ttmd[, 1]))
# ymax <- max(c(x[, 2], ttmd[, 2]))
# ymin <- min(c(x[, 2], ttmd[, 2]))
# plot(x, xlim = c(xmin, xmax), ylim = c(ymin, ymax),
# ...)
# }
}
sdx <- sd(x[, 1])
sdy <- sd(x[, 2])
for (j in 2:lalpha) {
e1md <- cos(c(0:m)/m * 2 * pi) * alphamd[j]
e2md <- sin(c(0:m)/m * 2 * pi) * alphamd[j]
emd <- cbind(e1md, e2md)
ttmd <- t(r %*% t(emd)) + rep(1, m + 1) %o% me
# lines(ttmd[, 1], ttmd[, 2], type = "l", col = 2)
lines(ttmd[, 1], ttmd[, 2], type = "l", col = 1, lty=2) #
}
j <- 1
e1md <- cos(c(0:m)/m * 2 * pi) * alphamd[j]
e2md <- sin(c(0:m)/m * 2 * pi) * alphamd[j]
emd <- cbind(e1md, e2md)
ttmd <- t(r %*% t(emd)) + rep(1, m + 1) %o% me
# lines(ttmd[, 1], ttmd[, 2], type = "l", col = 1, lwd = lwdcrit)
invisible()
}
5 এক্স 7 প্লট
#### getting data
K <- read.csv("~/Downloads/K.txt", sep="")
### plotting 35 individuals
par(mar=c(2.6,2.6,2.1,1.1))
layout(matrix(1:35,5))
for (i in 1:35) {
# selecting data with gloves for i-th participant
sel <- c(1:624)[(K$Participant==i) & (K$Surface == 'P') & (K$Gloves == 'G')]
# plot data
plot(K$NumberContacts[sel],log(K$CFU,10)[sel], col=1,
xlab="",ylab="",ylim=c(3,6))
# model and plot fit
m <- lm(log(K$CFU[sel],10) ~ K$NumberContacts[sel])
lines(K$NumberContacts[sel],predict(m), col=1)
# selecting data without gloves for i-th participant
sel <- c(1:624)[(K$Participant==i) & (K$Surface == 'P') & (K$Gloves == 'U')]
# plot data
points(K$NumberContacts[sel],log(K$CFU,10)[sel], col=2)
# model and plot fit
m <- lm(log(K$CFU[sel],10) ~ K$NumberContacts[sel])
lines(K$NumberContacts[sel],predict(m), col=2)
title(paste0("participant ",i))
}
2 এক্স 4 প্লট
#### plotting 8 treatments (number of contacts)
par(mar=c(5.1,4.1,4.1,2.1))
layout(matrix(1:8,2,byrow=1))
for (i in c(1:8)) {
# plot canvas
plot(c(3,6),c(3,6), xlim = c(3,6), ylim = c(3,6), type="l", lty=2, xlab='gloves', ylab='no gloves')
# select points and plot
sel1 <- c(1:624)[(K$NumberContacts==i) & (K$Surface == 'P') & (K$Gloves == 'G')]
sel2 <- c(1:624)[(K$NumberContacts==i) & (K$Surface == 'P') & (K$Gloves == 'U')]
points(K$log10CFU[sel1],K$log10CFU[sel2])
title(paste0("contact ",i))
# plot mean
points(mean(K$log10CFU[sel1]),mean(K$log10CFU[sel2]),pch=21,col=1,bg=2)
# plot elipse for mahalanobis distance
dd <- cbind(K$log10CFU[sel1],K$log10CFU[sel2])
drawelipse(dd,center=apply(dd,2,mean),
covariance=cov(dd),
quantile=0.975,col="blue",
xlim = c(3,6), ylim = c(3,6), type="l", lty=2, xlab='gloves', ylab='no gloves')
}
NumberContacts
একটি সংখ্যার ফ্যাক্টর হিসাবে ব্যবহার করতে পারেন এবং একটি চতুর্ভুজ / ঘনক বহুপদী পদ অন্তর্ভুক্ত করতে পারেন । বা জেনারালাইজড অ্যাডেটিভ মিশ্রিত মডেলগুলি দেখুন।