l oop заполнить матрицу после определенной частоты - PullRequest
0 голосов
/ 27 апреля 2020

Моя цель - преобразовать эти значения в 64 дня с частотой 102 (510/5). Есть 510 значений в день, и я хочу выбрать каждое пятое значение (1,6,11, ..., чтобы получить окончательную матрицу 102 * 64). Со следующим кодом:

    data <- read.csv(file="voljump.csv", header=FALSE, sep=",")#32640
    mat <- data.matrix(data)
            fin_data <- t(mat)
             days <- nrow(data)#32640
    freq <- 510
    data_5 <- matrix(0, freq, days) 
    for(j in 1:days) {for (i in 1:freq) 
      {data_5[i,j] <- fin_data[(i-1)*4+1 ,j]}}     

Я получаю ошибку:

"Ошибка в fin_data [(i - 1) * 5 + 1, j]: нижний индекс из границы "

1 Ответ

0 голосов
/ 28 апреля 2020

Я думаю, что следующий код может достичь вашей цели

data_5 <- fin_data[seq(1,510,by=5),]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...