Вы не выбираете правильную функцию для применения к Date
векторам при использовании циклов for.Лучше было бы обернуть seq_along
в значительной степени для каждой даты или фактора, который проходит через.Затем вы сделаете две вещи: а) настройте его так, чтобы вы ожидали индекс, начинающийся с 1, и б) защитите от странных вещей, которые происходят с векторами нулевой длины.Я также думаю, что было бы лучше использовать его с факторами, из-за которых циклы for превратятся в символьные векторы.
Что касается ответа Джошуа (что, безусловно, правильно и полезно), я думаю, что is.vector
функция немного помечена или, может быть, просто неправильно понята.Точнее можно было бы назвать hasNoAttributesOtherThanName
.Свойство, которое большинство людей считает «векторным», тестируется с объектами is.atomic
и Date
и POSIXct
, которые возвращают TRUE
из этого теста.