บางทีคุณอาจได้รับประโยชน์จากเครื่องมือสำรวจ การแบ่งข้อมูลออกเป็นส่วน ๆ ของพิกัด x นั้นดูเหมือนว่าได้ดำเนินการในจิตวิญญาณนั้น ด้วยการแก้ไขที่อธิบายไว้ด้านล่างจึงเป็นวิธีการที่สมบูรณ์แบบ
วิธีการสำรวจ bivariate จำนวนมากได้รับการคิดค้น แบบง่าย ๆ ที่เสนอโดย John Tukey ( EDA , Addison-Wesley 1977) คือ "แผนผังพเนจรที่หลงทาง" ของเขา คุณแบ่งพิกัด x ลงในถังขยะสร้าง boxplot แนวตั้งของข้อมูล y ที่สอดคล้องกันที่ค่ามัธยฐานของแต่ละถังขยะและเชื่อมต่อส่วนสำคัญของ boxplots (ค่ามัธยฐานบานพับ ฯลฯ ) เป็นเส้นโค้ง "ร่องรอยหลงทาง" เหล่านี้ให้ภาพของการกระจายของข้อมูล bivariate และอนุญาตให้ประเมินภาพความสัมพันธ์เชิงเส้นตรงของความสัมพันธ์ค่าผิดปกติและการกระจายเล็กน้อยรวมถึงการประเมินที่มีประสิทธิภาพและการประเมินความเหมาะสมของฟังก์ชันถดถอยแบบไม่เชิงเส้นใด ๆ .
สำหรับแนวคิดนี้ Tukey ได้เพิ่มความคิดซึ่งสอดคล้องกับแนวคิดแบบกล่องซึ่งเป็นวิธีที่ดีในการตรวจสอบการกระจายข้อมูลคือการเริ่มต้นที่ตรงกลางและทำงานออกไปด้านนอกลดปริมาณของข้อมูลในขณะที่คุณไป นั่นคือถังขยะที่จะใช้ไม่จำเป็นต้องถูกตัดที่ควอนไทล์ที่เว้นระยะเท่ากัน แต่ควรจะสะท้อนให้เห็นถึงปริมาณที่จุด2- k และ 1 -2- k สำหรับ k = 1 , 2 , 3 , ....
ในการแสดงประชากรถังที่แตกต่างเราสามารถสร้างความกว้างของ boxplot แต่ละสัดส่วนตามปริมาณข้อมูลที่แสดง
พล็อตแผนผังหลงทางที่เกิดขึ้นจะมีลักษณะเช่นนี้ ข้อมูลที่พัฒนาจากข้อมูลสรุปจะแสดงเป็นจุดสีเทาในพื้นหลัง ในเรื่องนี้พล็อตแผนผังที่หลงทางได้ถูกวาดขึ้นโดยมีร่องรอยห้าสีและ boxplots (รวมถึงค่าผิดปกติใด ๆ ที่แสดง) เป็นขาวดำ
ธรรมชาติของความสัมพันธ์ใกล้ศูนย์กลายเป็นชัดเจนทันที: ข้อมูลบิดไปมา ใกล้ศูนย์ของพวกเขาตั้งแต่x = - 4 ถึง x = 4พวกเขามีความสัมพันธ์เชิงบวกที่ดี ที่ค่าสุดขีดข้อมูลเหล่านี้แสดงความสัมพันธ์เชิงเส้นโค้งที่มีแนวโน้มว่าภาพรวมทั้งหมดจะเป็นลบ ค่าสัมประสิทธิ์สหสัมพันธ์ (ซึ่งเกิดขึ้นเป็น- 0.074สำหรับข้อมูลเหล่านี้) อยู่ใกล้กับศูนย์ อย่างไรก็ตามยืนยันในการตีความว่าเป็น "เกือบไม่มีความสัมพันธ์" หรือ "ความสัมพันธ์ที่มีนัยสำคัญ แต่ต่ำ" จะเป็นข้อผิดพลาดเดียวกันหลอกในเรื่องตลกเก่าเกี่ยวกับนักสถิติที่มีความสุขกับหัวของเธอในเตาอบและเท้าใน icebox เพราะโดยเฉลี่ย อุณหภูมิก็สบาย บางครั้งหมายเลขเดียวก็ไม่สามารถอธิบายสถานการณ์ได้
เครื่องมือสำรวจทางเลือกที่มีจุดประสงค์คล้ายกันรวมถึงความราบรื่นของควอนไทล์แบบเรียงซ้อนของข้อมูล ด้วยความพร้อมของซอฟต์แวร์ที่ใช้ในการคำนวณเหล่านี้พวกเขาอาจจะง่ายต่อการดำเนินการกว่าร่องรอยหลงทางวงจร แต่พวกเขาไม่สนุกกับการก่อสร้างที่เรียบง่ายเหมือนกันง่ายต่อการตีความและการบังคับใช้ในวงกว้าง
R
รหัสต่อไปนี้สร้างตัวเลขและสามารถนำไปใช้กับข้อมูลต้นฉบับโดยมีการเปลี่ยนแปลงเพียงเล็กน้อยหรือไม่มีเลย (ไม่สนใจคำเตือนที่สร้างโดยbplt
(เรียกโดยbxp
): จะบ่นเมื่อไม่มีค่าใช้จ่ายที่จะดึง)
#
# Data
#
set.seed(17)
n <- 1449
x <- sort(rnorm(n, 0, 4))
s <- spline(quantile(x, seq(0,1,1/10)), c(0,.03,-.6,.5,-.1,.6,1.2,.7,1.4,.1,.6),
xout=x, method="natural")
#plot(s, type="l")
e <- rnorm(length(x), sd=1)
y <- s$y + e # ($ interferes with MathJax processing on SE)
#
# Calculations
#
q <- 2^(-(2:floor(log(n/10, 2))))
q <- c(rev(q), 1/2, 1-q)
n.bins <- length(q)+1
bins <- cut(x, quantile(x, probs = c(0,q,1)))
x.binmed <- by(x, bins, median)
x.bincount <- by(x, bins, length)
x.bincount.max <- max(x.bincount)
x.delta <- diff(range(x))
cor(x,y)
#
# Plot
#
par(mfrow=c(1,1))
b <- boxplot(y ~ bins, varwidth=TRUE, plot=FALSE)
plot(x,y, pch=19, col="#00000010",
main="Wandering schematic plot", xlab="X", ylab="Y")
for (i in 1:n.bins) {
invisible(bxp(list(stats=b$stats[,i, drop=FALSE],
n=b$n[i],
conf=b$conf[,i, drop=FALSE],
out=b$out[b$group==i],
group=1,
names=b$names[i]), add=TRUE,
boxwex=2*x.delta*x.bincount[i]/x.bincount.max/n.bins,
at=x.binmed[i]))
}
colors <- hsv(seq(2/6, 1, 1/6), 3/4, 5/6)
temp <- sapply(1:5, function(i) lines(spline(x.binmed, b$stats[i,],
method="natural"), col=colors[i], lwd=2))