Предупреждающее сообщение: в 1: 5: длина (N): числовое выражение имеет 5 элементов: используется только первый - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь разделить данные на 55 временных рядов, как указано в моем назначении. Мой профессор показал мне, как разделить их, создав цикл. В этом случае D имеет 11 уровней, а N имеет 5 уровней. Каким-то образом я могу получить только один временной ряд. Я не знаю, что я должен сделать, чтобы отделить остальных от них. У кого-нибудь есть идея?

D=unique(T$daypart)
D
N=unique(T$network)
N

for (i in 1:length(D)) {
 for(j in 1: length(N)) {
   my_ts <- filter(T,network==N[j],daypart==D[i])

1 Ответ

0 голосов
/ 04 мая 2018

Как @steveLangsford сказал, что вы постоянно перезаписываете свои данные. Сохраняйте каждый прогон в пустом списке, чтобы вы могли получить к ним доступ после того, как все закончится:

##create an empty list
my_ts <- list()

##start an iteration #
iter <- 1

##feed the data in
for (i in 1:length(D)) {
 for(j in 1: length(N)) {
   my_ts[[iter]] <- filter(T,network==N[j],daypart==D[i])
   iter <- iter + 1
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...