La première colonne de mes données est un facteur qui contient deux ensembles d'informations: le type d'activation fonctionne (A1-4) et le mois où il a été effectué (environ 50 observations au format YYMM) . Une version simplifiée pourrait ressembler à ceci:Comment séparer une colonne
A = data.frame(type.month=c("A1.1605", "A2.1605", "A1.1604", "A2.1604"), value=sample(1:4))
> A
type.month value
1 A1.1605 2
2 A2.1605 4
3 A1.1604 1
4 A2.1604 3
Je voudrais obtenir le types
dans une colonne et le months
dans une autre et je read que, normalement, cela pourrait se faire avec le paquet reshape2
lorsque les variables sont séparées d'une manière ordonnée (dire par exemple la première moitié est seulement A1 et la seconde moitié est seulement A2). Cependant, le mien alternatif (A1, A2, A1 ...) et contient deux informations (type et mois). Est-ce que reshape2
est toujours un bon outil dans ce cas ou devrais-je penser à autre chose?
Mon but est de garder les quatre types d'activation et les mois dans une même base de données afin de ne pas avoir à les stocker dans quatre fichiers différents.
Vous allez vouloir le stringr. Regarde ça! http://stackoverflow.com/questions/4350440/split-a-column-of-a-data-frame-to-multiple-columns – Joy
Joy, merci, je vais vérifier! @Frank, espérons que le titre est meilleur maintenant. – babesz
Ce n'est pas vraiment remodeler - vous voulez le même nombre de lignes, vous avez juste besoin de casser une colonne. Vous pouvez utiliser une manipulation de chaîne ou un one-liner de 'tidyr',' tidyr :: separate (A, col = type.month, dans = c ("type", "mois")) '. Par défaut, il sépare la chaîne sur tous les caractères non alphanumériques. – Gregor