distinct() dans tidyr avec NA

J'ai une question par rapport à separate() dans le tidyr le paquet. Quand il n'y a pas de NA dans un bloc de données, séparés() fonctionne. J'ai été en utilisant cette fonction beaucoup. Mais, aujourd'hui, j'ai eu un cas dans lequel il y avait des NAs dans un bloc de données. separate() a renvoyé un message d'erreur. Je pourrais être très bête. Mais, je me demande si tidyr ne peut pas être conçu pour ce genre de nettoyage des données. Ou est-il de toute façon separate() peut travailler avec NAs? Merci beaucoup d'avoir pris de votre temps.

Ici est une mise à jour de l'échantillon sur la base des commentaires. Dire que je veux séparer les caractères en y et de créer de nouvelles colonnes. Si je supprime la ligne avec NA, separate() fonctionne. Mais, je ne veux pas supprimer la ligne, que pouvais-je faire?

x <- c("a-1","b-2","c-3")
y <- c("d-4","e-5", NA)
z <- c("f-6", "g-7", "h-8")

foo <- data.frame(x,y,z, stringsAsFactors = F)

ana <- foo %>%
   separate(y, c("part1", "part2"))

# > foo
#    x    y   z
# 1 a-1  d-4 f-6
# 2 b-2  e-5 g-7
# 3 c-3 <NA> h-8
# > ana <- foo %>%
# +        separate(y, c("part1", "part2"))
# Error: Values not split into 2 pieces at 3
  • NA devrait être mieux utilisé sans guillemets. Ne sais pas si c'est une erreur ou pas. (Même si, il est sans rapport avec la question). Quel est votre sortie attendue quand il est 'NA'?
  • Il est bon que vous avez mis à jour. Mais, j'ai un doute. voulez-vous séparer y à 'part1 avec d, e, part2 avec 4,5, and part3 " avec NA. Vous pourriez avoir utilisé foo <- data.frame(x,y,z,stringsAsFactors=F) et éviter ces 4 étapes.
  • Salut, merci pour votre commentaire. J'ai changé "NA" NA dans la mise à jour de l'exemple. Si separate() pouvez créer deux NAs après l'opération (je.e, on NA dans une nouvelle colonne, et un autre NA dans une autre colonne, ce serait génial. Avez-vous une suggestion? Je vous remercie.
  • Pourriez vous s'il vous plaît remplir un rapport de bogue sur le tidyr github?
  • Salut Hadley, c'est sûr. Je veux juste m'assurer que je suis censé faire rapport de ce sous les "Questions" dans le tidyr github, droit?
InformationsquelleAutor jazzurro | 2014-08-19