Используя R, я пытаюсь обрезать значения NA с начала и конца фрейма данных, содержащего несколько временных рядов. . Я достиг своей цели, используя цикл for и пакет zoo, но, как и ожидалось, он крайне неэффективен для больших кадров данных.
Мой фрейм данных выглядит следующим образом и содержит 3 столбца, каждый временной ряд идентифицируется своим уникальным идентификатором. В данном случае AAA, B и CCC.
id date value
AAA 2010/01/01 NA
AAA 2010/02/01 34
AAA 2010/03/01 35
AAA 2010/04/01 30
AAA 2010/05/01 NA
AAA 2010/06/01 28
B 2010/01/01 NA
B 2010/02/01 0
B 2010/03/01 1
B 2010/04/01 2
B 2010/05/01 3
B 2010/06/01 NA
B 2010/07/01 NA
B 2010/07/01 NA
CCC 2010/01/01 0
CCC 2010/02/01 400
CCC 2010/03/01 300
CCC 2010/04/01 200
CCC 2010/05/01 NA
Я хотел бы знать, как эффективно удалить значения NA из начала и конца каждого временного ряда, в данном случае AAA, B и CCC. Так это должно выглядеть так.
id date value
AAA 2010/02/01 34
AAA 2010/03/01 35
AAA 2010/04/01 30
AAA 2010/05/01 NA
AAA 2010/06/01 28
B 2010/02/01 0
B 2010/03/01 1
B 2010/04/01 2
B 2010/05/01 3
CCC 2010/01/01 0
CCC 2010/02/01 400
CCC 2010/03/01 300
CCC 2010/04/01 200