2011-12-08 28 views
15

Tôi vừa mới bắt đầu phát với lớp ts để phân tích một số dữ liệu chuỗi thời gian mà tôi có.Phân tích dữ liệu Hàng ngày/Hàng tuần sử dụng ts trong R

Tôi hiểu rằng lớp ts không phù hợp để phân tích dữ liệu hàng ngày hoặc hàng tuần. Hầu như tất cả các ví dụ tôi thấy trên web hoặc trong "Chuỗi thời gian giới thiệu với R" của Cowpertwait và Metcalfe đều sử dụng dữ liệu hàng tháng hoặc hàng năm.

Tôi muốn sử dụng ts để phân tích dữ liệu hàng tuần, có nên không?

Trả lời

9

Lớp ts phù hợp với bất kỳ loại dữ liệu nào có khoảng thời gian chính xác giữa các lần quan sát. Cho dù khoảng thời gian đó là năm, tháng, ngày, phút không tạo ra bất kỳ sự khác biệt nào. Điều này làm cho nó rất phù hợp với nhiều dữ liệu khoa học, ví dụ: quan sát thời tiết.

Tuy nhiên, một lớp lớn dữ liệu liên quan đến thời gian có khoảng trống. Lấy ví dụ giá đóng cửa cổ phiếu không tồn tại trong những ngày cuối tuần. Đối với loại dữ liệu này, bạn nên sử dụng các gói xts (chuỗi thời gian mở rộng) hoặc zoo (các quan sát được sắp xếp của Z - trong đó Z là khởi đầu của một trong các tác giả gói).

Liên kết đến Cran:

+0

Tôi đồng ý rằng ts không phải là lựa chọn tuyệt vời cho các tình huống trong đó khoảng cách giữa các quan sát thay đổi Tuy nhiên, ví dụ về giá đóng cửa hàng ngày (theo ý kiến ​​của tôi) là một mức tương đối kém. Đó là hoàn toàn tiêu chuẩn trong ngành công nghiệp tài chính để xem xét dữ liệu cổ phiếu hàng ngày như thể không có ngày can thiệp (mất tích) nào. – pmcs

3

Các đơn vị thời gian không đi vào chơi; chỉ số lượng datapoints trên mỗi đơn vị (tần số) làm. Theo như ts và chức năng chăm sóc của nó, một ngày là một năm là một thập kỷ là một bất cứ điều gì. Không có lúc nào bạn nói với nó rằng thời gian unti nó đối phó với là một tuần hoặc ngày. Nó không quan trọng!

1

Tôi cho rằng vấn đề với dữ liệu hàng ngày/hàng tuần là cả hai đều có đơn vị nhảy vọt. Mỗi năm thứ tư có thêm 366 ngày và mỗi năm thứ tư có 53 tuần. Hoặc đã có từ năm 1900. Vì vậy, "tần số" không phải là hằng số hoặc một phần nhỏ. Nếu không ts sẽ hoạt động tốt.

Cách dễ nhất trong tuần là sử dụng ngày bắt đầu của tuần. Trên các hệ thống không giống như bạn cũng có thể sử dụng tuần ISO và cũng có một gói triển khai chúng. Tất nhiên nếu dữ liệu của bạn đã có trong tuần, bạn chỉ cần những dữ liệu này để ghi nhãn đồ thị, v.v.

10

Vấn đề chính là hầu hết mọi người muốn phân tích dữ liệu hàng ngày hoặc hàng tuần muốn thực hiện điều gì đó như sử dụng tần suất 365 ngày mỗi năm hoặc 52 tuần mỗi năm nhưng số ngày hoặc tuần trong một năm không phải là 365 hoặc 52 hoặc thậm chí không đổi. Nếu bạn thả một ngày trong những năm nhuận trong trường hợp dữ liệu hàng ngày, giả sử hoặc sử dụng 7 ngày cho mỗi tuần trong năm, ngoại trừ một ngày có 8 hoặc 9 ngày trong trường hợp dữ liệu hàng tuần, thì bạn có thể giả mạo nó. Một loạt các chương trình vô tận là có thể.

Đọc qua this thread để biết ví dụ.

5

Sở thú hoạt động tốt với dữ liệu hàng ngày. Ví dụ: nếu bạn có một chuỗi luồng hàng ngày trong vectơ Q và có dấu ngày tương ứng D (được tạo bằng cách sử dụng as.Date(), ví dụ).

Q.z < - vườn thú (Q, order.by = D)

sẽ tạo ra một đối tượng mà sẽ vẽ độc đáo và bạn có thể sử dụng các chức năng như cửa sổ() để trích xuất năm đơn ví dụ

cửa sổ (QZ, start = as.Date ('2000/01/01'), kết thúc = as.Date ('2000-31-12')

Kiểm tra gói Zoo để biết thêm thông tin.

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