Tôi khá quen thuộc với R vì tôi đã sử dụng nó trong một vài năm nay. Thật không may, tôi không phải là rất thạo trong việc tạo ra các chức năng liên quan đến lặp hoặc lặp lại của một phương trình. Sự cố xảy ra như sau:Lặp lại hoặc lặp lại một đối số
Tôi có vectơ chứa hơn 1000 giá trị. Tôi muốn tính toán sự khác biệt tuyệt đối giữa hai phương tiện juxtaposing có kích thước bằng nhau từ một tập con của vector đó.
Đây là một ví dụ.
Tôi có vector (VEC) có độ dài 8
[1] 0.12472963 1.15341289 -1.09662288 -0.73241639 0.06437658 -0.13647136 -1.52592048 1.46450084
Tôi muốn tính toán giá trị trung bình của 2 giá trị đầu tiên (0,12472963, 1,15341289) và có được sự khác biệt tuyệt đối với giá trị trung bình của 2 giá trị sau (-1.09662288 -0.73241639), sau đó, làm việc theo cách của tôi xuống vector.
Trong trường hợp này, tôi có thể dễ dàng sử dụng các phương trình sau:
abs(mean(vec[1:2])-mean(vec[3:4]))
và từng bước tăng mỗi số 1 để làm việc theo cách của tôi xuống bằng tay cho đến cuối của vector. Tôi sẽ có được véc tơ sau.
[1] 1.553591 0.3624149 0.8784722 0.497176 0.005337574
Điều tôi muốn, có thói quen tự động cho phép tôi thực hiện điều đó qua các vectơ dài và thay đổi số giá trị để tính phương tiện.
Dường như với tôi rằng nó phải tương đối đơn giản, nhưng tôi không biết bắt đầu từ đâu.
Bạn có thể nhìn vào 'rollapply() 'từ' gói zoo'. –