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
| X <- data.frame(ID = 1:4, xxx = c("A1", "A2", "A1", "A3"), var1= c("AAA/BBB/CCC", "BBB", "CCC/AAA", "ZZZ/PPP")) # jeu de données d'exemple
ID xxx var1
1 1 A1 AAA/BBB/CCC
2 2 A2 BBB
3 3 A1 CCC/AAA
4 4 A3 ZZZ/PPP
list_vars1 <- strsplit(as.character(X$var1), "/")
S <- NULL
for(i in 1:(length(list_vars1)))
{
ll <- list_vars1[[i]]
nl <- length(ll)
a <- data.frame(rep(X$ID[i], nl), rep(X$xxx[i], nl), ll)
S <- rbind(S, a)
}
colnames(S) <- colnames(X)
S <- as.data.frame(S)
ID xxx var1
1 1 A1 AAA
2 1 A1 BBB
3 1 A1 CCC
4 2 A2 BBB
5 3 A1 CCC
6 3 A1 AAA
7 4 A3 ZZZ
8 4 A3 PPP |
Partager