sous-ensemble de données.cadre avec plusieurs conditions
Suppose que mes données ressemble à ceci:
2372 Kansas KS2000111 HUMBOLDT, CITY OF ATRAZINE 1.3 05/07/2006
9104 Kansas KS2000111 HUMBOLDT, CITY OF ATRAZINE 0.34 07/23/2006
9212 Kansas KS2000111 HUMBOLDT, CITY OF ATRAZINE 0.33 02/11/2007
2094 Kansas KS2000111 HUMBOLDT, CITY OF ATRAZINE 1.4 05/06/2007
16763 Kansas KS2000111 HUMBOLDT, CITY OF ATRAZINE 0.61 05/11/2009
1076 Kansas KS2000111 HUMBOLDT, CITY OF METOLACHLOR 0.48 05/12/2002
1077 Kansas KS2000111 HUMBOLDT, CITY OF METOLACHLOR 0.3 05/07/2006
Je veux être en mesure de sous-ensemble par l'Analyte et une correspondance partielle sur la date(à savoir, je veux juste l'année). J'ai essayé ceci, mais je sais que ce n'est pas tout à fait droit.
data[data$Analyte=="ATRAZINE" & grep("2006",as.character(data$Date)),]
Des suggestions?
Questions connexes: stackoverflow.com/questions/1536590/... et stackoverflow.com/questions/2844669/...
OriginalL'auteur pslice | 2010-06-16
Vous devez vous connecter pour publier un commentaire.
Pour ce problème, je voudrais aller avec l'approche de l'Apprenti de la File d'attente de la réponse de l'extraction de l'an à compter de la date plutôt que de faire de la chaîne générique correspondant. Je dirais:
Mais si vous avez vraiment eu à faire regexp correspondant, vous pouvez utiliser
grepl
qui renvoie à une logique de vecteur plutôt quegrep
qui renvoie un vecteur d'indices.OriginalL'auteur Jyotirmoy Bhattacharya
Un chemin à l'aide de la date de littéraux:
Une autre manière, en utilisant des
format
subset
vous pouvez passer$
références, par exemple:subset(data, Analyte=="ATRAZINE" & format(Date, "%Y")=="2006")
. Et dans votre première solutionas.Date
est nécessaire.comme.La Date n'est pas nécessaire car R convertit automatiquement en Date.
Mon erreur. Je m'ennuie dans la version de R qui a été changé. Une fois j'ai eu une erreur dans la R-2.2.0 et à partir de ce moment, j'ai toujours utilisé
as.Date
. Le temps de réécrire tout mon code 🙂OriginalL'auteur Apprentice Queue
Réaliser cette question a été posée tout à fait il y a quelques années, j'espère que devrait aider quelqu'un dans le futur.
Utilisé dplyr pour les sous-paramètre à l'aide de plusieurs conditions, et la vérification de l'année d'après conversion en type Date
OriginalL'auteur Indi