1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
tab <- as.data.frame(tab)
i = 0
taille <- length(tab)
repeat {
i = i + 1
pre <- regexpr("[^}]+_", names(tab[i]))
pre <- regmatches(names(tab[i]),pre)
pre1 <- regexpr("[^}]+_", names(tab[i+1]))
pre1 <- regmatches(names(tab[i+1]),pre1)
fin <- regexpr("_.+", names(tab[i]))
fin <- regmatches(names(tab[i]),fin)
fin1 <- regexpr("_.+", names(tab[i+1]))
fin1 <- regmatches(names(tab[i+1]),fin1)
if (!identical(pre, character(0)) & !identical(pre1, character(0)) & !identical(fin, character(0))& !identical(fin1, character(0))){
pre2 <- regexpr("[^}]+_", names(tab[i+2]))
pre2 <- regmatches(names(tab[i+2]),pre2)
fin2 <- regexpr("_.+", names(tab[i+2]))
fin2 <- regmatches(names(tab[i+2]),fin2)
if (!identical(fin2, character(0)) & !identical(fin2, character(0))){
if (pre==pre1 & pre1==pre2){
if (fin == "_j" & fin1 == "_m" & fin2 == "_a"){
nom <- paste0(pre,"date")
tab[,nom] <- paste(tab[,i], tab[,i+1], tab[,i+2], sep="-")
tab[,nom] <- as.Date(tab[,nom], "%d-%m-%Y")
i <- i + 2
}
}else if (pre == pre1){
if (fin == "_m" & fin1 == "_a" ){
nom <- paste0(pre,"date")
tab[,nom] <- paste(tab[,i], tab[,i+1],sep="-")
i <- i + 2
}
}
}
else {
if (pre == pre1){
if (fin == "_m" & fin1 == "_a" ){
nom <- paste0(pre,"date")
tab[,nom] <- paste(tab[,i], tab[,i+1],sep="-")
i <- i + 2
}
}
}
}
if (i >= taille) break
} |
Partager