Я хочу создать вектор размером, скажем, 1000, такой, что каждый элемент равен нулю, кроме каждого 4-го элемента, к которому я применяю функцию X (z). Каждый 4-й элемент должен давать различное значение X (z).
Первоначально у меня был код ниже, который дает мне 1000 элементов с различными значениями X (z). Но я хочу, чтобы он применялся только к каждому 4-му элементу, а остальные равны 0.
replicate(1000,X(1))
Затем я создал список из тысячи нулей и добавил X (1) к 4-му элементу с помощью * 1008. *
a<-replicate(1000,0)
a[c(FALSE, FALSE, FALSE,TRUE)] <- a[c(FALSE, FALSE, FALSE,TRUE)]+X(1)
Но это дает мне ЖЕ значение X (1) для каждого 4-го элемента. Я хочу, чтобы функция запускалась по-разному для каждого элемента. Есть ли более красноречивый способ сделать это, чем мое мышление?