У меня есть список фреймов данных, где каждый фрейм данных содержит дату в формате week.year, например 01.2019, 02.2019 и т. Д. Я хотел бы сохранить 0 перед одиночными ди git неделями, такими как 01 или 02, поскольку сейчас он меняет его на 1,2 и так далее. Я написал следующий код, который прекрасно работает, когда столбец набора данных $ CAL имеет значения week.year.
X <-list()
x <- nchar(dataset$CAL)
counter=1
for (i in x) {
if (i==6){
dataset$CAL[counter]<- paste0("0", dataset$CAL[counter])
}
else {
dataset$CAL[counter]<-dataset$CAL[counter]
}
counter <- counter+1
}
Но из-за этого возникает серьезная проблема с производительностью, которая загружается слишком долго и, конечно же, используется для l oop в R не рекомендуется. Я пытался использовать функцию lapply, но она не дает соответствующих результатов
dataset$CAL <- lapply(dataset$CAL, function(x) if (nchar(dataset$CAL)==6) {paste0("0", dataset$CAL)} else {dataset$CAL})
Есть ли какие-либо указатели в этом направлении ?? Очень ценю помощь.