Khó khăn trong việc sử dụng biểu đồ để suy ra hình dạng
Trong khi biểu đồ thường tiện dụng và đôi khi hữu ích, chúng có thể gây hiểu nhầm. Sự xuất hiện của chúng có thể thay đổi khá nhiều với những thay đổi về vị trí của ranh giới bin.
Vấn đề này đã được biết đến từ lâu *, mặc dù có lẽ không rộng rãi như vậy - bạn hiếm khi thấy nó được đề cập trong các cuộc thảo luận cấp tiểu học (mặc dù có những trường hợp ngoại lệ).
* ví dụ, Paul Rubin [1] đã nói theo cách này: " ai cũng biết rằng việc thay đổi các điểm cuối trong biểu đồ có thể thay đổi đáng kể diện mạo của nó ". .
Tôi nghĩ đó là một vấn đề nên được thảo luận rộng rãi hơn khi giới thiệu biểu đồ. Tôi sẽ đưa ra một số ví dụ và thảo luận.
Tại sao bạn nên cảnh giác khi dựa vào một biểu đồ duy nhất của tập dữ liệu
Hãy xem bốn biểu đồ này:
Đó là bốn biểu đồ trông rất khác nhau.
Nếu bạn dán dữ liệu sau vào (Tôi đang sử dụng R ở đây):
Annie <- c(3.15,5.46,3.28,4.2,1.98,2.28,3.12,4.1,3.42,3.91,2.06,5.53,
5.19,2.39,1.88,3.43,5.51,2.54,3.64,4.33,4.85,5.56,1.89,4.84,5.74,3.22,
5.52,1.84,4.31,2.01,4.01,5.31,2.56,5.11,2.58,4.43,4.96,1.9,5.6,1.92)
Brian <- c(2.9, 5.21, 3.03, 3.95, 1.73, 2.03, 2.87, 3.85, 3.17, 3.66,
1.81, 5.28, 4.94, 2.14, 1.63, 3.18, 5.26, 2.29, 3.39, 4.08, 4.6,
5.31, 1.64, 4.59, 5.49, 2.97, 5.27, 1.59, 4.06, 1.76, 3.76, 5.06,
2.31, 4.86, 2.33, 4.18, 4.71, 1.65, 5.35, 1.67)
Chris <- c(2.65, 4.96, 2.78, 3.7, 1.48, 1.78, 2.62, 3.6, 2.92, 3.41, 1.56,
5.03, 4.69, 1.89, 1.38, 2.93, 5.01, 2.04, 3.14, 3.83, 4.35, 5.06,
1.39, 4.34, 5.24, 2.72, 5.02, 1.34, 3.81, 1.51, 3.51, 4.81, 2.06,
4.61, 2.08, 3.93, 4.46, 1.4, 5.1, 1.42)
Zoe <- c(2.4, 4.71, 2.53, 3.45, 1.23, 1.53, 2.37, 3.35, 2.67, 3.16,
1.31, 4.78, 4.44, 1.64, 1.13, 2.68, 4.76, 1.79, 2.89, 3.58, 4.1,
4.81, 1.14, 4.09, 4.99, 2.47, 4.77, 1.09, 3.56, 1.26, 3.26, 4.56,
1.81, 4.36, 1.83, 3.68, 4.21, 1.15, 4.85, 1.17)
Sau đó, bạn có thể tự tạo chúng:
opar<-par()
par(mfrow=c(2,2))
hist(Annie,breaks=1:6,main="Annie",xlab="V1",col="lightblue")
hist(Brian,breaks=1:6,main="Brian",xlab="V2",col="lightblue")
hist(Chris,breaks=1:6,main="Chris",xlab="V3",col="lightblue")
hist(Zoe,breaks=1:6,main="Zoe",xlab="V4",col="lightblue")
par(opar)
Bây giờ hãy nhìn vào biểu đồ dải này:
x<-c(Annie,Brian,Chris,Zoe)
g<-rep(c('A','B','C','Z'),each=40)
stripchart(x~g,pch='|')
abline(v=(5:23)/4,col=8,lty=3)
abline(v=(2:5),col=6,lty=3)
(Nếu vẫn chưa rõ ràng, hãy xem điều gì xảy ra khi bạn trừ dữ liệu của Annie khỏi mỗi bộ head(matrix(x-Annie,nrow=40))
:)
Dữ liệu đơn giản đã được dịch chuyển sang trái mỗi lần 0,25.
Tuy nhiên, những ấn tượng chúng ta có được từ biểu đồ - xiên phải, đồng phục, xiên trái và lưỡng kim - hoàn toàn khác nhau. Ấn tượng của chúng tôi hoàn toàn bị chi phối bởi vị trí của thùng rác đầu tiên so với mức tối thiểu.
Vì vậy, không chỉ là 'số mũ' so với 'không thực sự theo cấp số nhân' mà là 'lệch phải' so với 'lệch trái' hoặc 'lưỡng kim' so với 'đồng phục' chỉ bằng cách di chuyển nơi các thùng của bạn bắt đầu.
Chỉnh sửa: Nếu bạn thay đổi băng thông, bạn có thể nhận được những thứ như thế này xảy ra:
Đó là 34 quan sát giống nhau trong cả hai trường hợp, chỉ là các điểm dừng khác nhau, một điểm dừng có độ rộng và điểm khác có độ rộng .0,810,8
x <- c(1.03, 1.24, 1.47, 1.52, 1.92, 1.93, 1.94, 1.95, 1.96, 1.97, 1.98,
1.99, 2.72, 2.75, 2.78, 2.81, 2.84, 2.87, 2.9, 2.93, 2.96, 2.99, 3.6,
3.64, 3.66, 3.72, 3.77, 3.88, 3.91, 4.14, 4.54, 4.77, 4.81, 5.62)
hist(x,breaks=seq(0.3,6.7,by=0.8),xlim=c(0,6.7),col="green3",freq=FALSE)
hist(x,breaks=0:8,col="aquamarine",freq=FALSE)
Tiện lợi hả?
Đúng, những dữ liệu đó được tạo ra một cách có chủ ý để làm điều đó ... nhưng bài học rất rõ ràng - những gì bạn nghĩ bạn nhìn thấy trong biểu đồ có thể không phải là một ấn tượng đặc biệt chính xác về dữ liệu.
Chúng ta có thể làm gì?
Biểu đồ được sử dụng rộng rãi, thường xuyên thuận tiện để có được và đôi khi dự kiến. Chúng ta có thể làm gì để tránh hoặc giảm thiểu những vấn đề như vậy?
Như Nick Cox đã chỉ ra trong một bình luận cho một câu hỏi liên quan : Quy tắc ngón tay cái luôn luôn phải là các chi tiết mạnh mẽ cho các biến thể về chiều rộng của thùng và nguồn gốc bin có thể là chính hãng; chi tiết mong manh như vậy có khả năng là giả hoặc tầm thường .
Ít nhất, bạn phải luôn luôn tạo biểu đồ ở một số mức độ băng thông hoặc nguồn gốc khác nhau, hoặc tốt nhất là cả hai.
Ngoài ra, kiểm tra ước tính mật độ hạt nhân ở băng thông không quá rộng.
Một cách tiếp cận khác làm giảm tính tùy tiện của biểu đồ là biểu đồ thay đổi trung bình ,
(đó là một trong bộ dữ liệu gần đây nhất) nhưng nếu bạn nỗ lực, tôi nghĩ bạn cũng có thể sử dụng ước tính mật độ hạt nhân.
Nếu tôi đang làm một biểu đồ (tôi sử dụng chúng mặc dù nhận thức sâu sắc về vấn đề này), tôi hầu như luôn thích sử dụng nhiều thùng hơn so với các mặc định chương trình thông thường có xu hướng đưa ra và tôi thường thích làm một số biểu đồ với độ rộng thùng khác nhau (và, đôi khi, nguồn gốc). Nếu chúng hợp lý về ấn tượng, bạn có thể không gặp phải vấn đề này và nếu chúng không nhất quán, bạn biết xem xét kỹ hơn, có thể thử ước tính mật độ hạt nhân, CDF theo kinh nghiệm, cốt truyện QQ hoặc một cái gì đó giống.
Trong khi biểu đồ đôi khi có thể gây hiểu nhầm, các ô vuông thậm chí còn dễ bị các vấn đề như vậy hơn; với một boxplot, bạn thậm chí không có khả năng nói "sử dụng nhiều thùng hơn". Xem bốn bộ dữ liệu rất khác nhau trong bài đăng này , tất cả đều có các ô vuông đối xứng giống hệt nhau, mặc dù một trong các bộ dữ liệu khá sai lệch.
[1]: Rubin, Paul (2014) "Lạm dụng biểu đồ!",
Bài đăng trên blog, HOẶC trong thế giới OB ,
liên kết ngày 23 tháng 1 năm 2014 ... (liên kết thay thế)