2015-09-04 16 views
11

Cho một tập dữ liệu của tháng, làm thế nào để tính toán tháng "trung bình", có tính đến tháng đó là hình tròn?"hình tròn" có nghĩa là trong R

months = c(1,1,1,2,3,5,7,9,11,12,12,12) 
mean(months) 
## [1] 6.333333 

Trong ví dụ giả này, có nghĩa là vào tháng 1 hoặc tháng 12. Tôi thấy rằng có những gói cho số liệu thống kê vòng tròn, nhưng tôi không chắc liệu chúng có phù hợp với nhu cầu của tôi ở đây hay không.

Trả lời

15

Tôi nghĩ

months <- c(1,1,1,2,3,5,7,9,11,12,12,12) 
library("CircStats") 
conv <- 2*pi/12 ## months -> radians 

Bây giờ chuyển đổi từ tháng đến radian, tính toán giá trị trung bình tròn, và chuyển đổi trở lại tháng. Tôi đang trừ 1 ở đây giả định rằng tháng 1 là "0 radian"/12 giờ ...

(res1 <- circ.mean(conv*(months-1))/conv) 

Kết quả là -0.3457. Bạn có thể muốn:

(res1 + 12) %% 12 

mang đến cho 11,65, tức là partway qua tháng mười hai (kể từ khi chúng tôi vẫn còn trên 0 = tháng Một, 11 Tháng mười hai = quy mô)

tôi nghĩ này là đúng, nhưng có không kiểm tra nó quá cẩn thận.

Đối với những gì nó có giá trị, các CircStats::circ.mean chức năng rất đơn giản - nó có thể không có giá trị overhead tải gói nếu điều này là tất cả các bạn cần:

function (x) 
{ 
    sinr <- sum(sin(x)) 
    cosr <- sum(cos(x)) 
    circmean <- atan2(sinr, cosr) 
    circmean 
} 

Lồng ghép @ thay thế thông minh A.Webb từ các ý kiến:

m <- mean(exp(conv*(months-1)*1i)) 
12+Arg(m)/conv%%12 ## 'direction', i.e. average month 
Mod(m)    ## 'intensity' 
+1

'12 + Arg (trung bình (exp (conv * (tháng-1) * 1i)))/conv %% 12', tương đương –

+0

Đó là một công thức thông minh. Tôi tự hỏi nếu phương trình đó có thể được sử dụng để xác định phương tiện cho dữ liệu lưỡng cực? – Chris

+0

Trong bài viết về chủ đề này, nó được viết "Bán kính kết quả sẽ là 1 nếu tất cả các góc đều bằng nhau. Nếu các góc được phân bố đều trên hình tròn, thì bán kính kết quả sẽ là 0, và không có nghĩa tròn." Làm thế nào để tính toán 'bán kính' để sử dụng nó như là một chỉ báo về sức mạnh của giá trị trung bình? Nguồn: https://en.wikipedia.org/wiki/Mean_of_circular_quantities – Chris

Các vấn đề liên quan