2016-04-23 1 views
1

J'ai un ensemble de données appelé salaires qui ont yearID comme une colonne. Je voudrais préciser la gamme de l'année de 2010 à 2014. Comment pourrais-je faire cela dans r? Je l'ai essayéComment spécifier la plage de l'année dans r?

df <- Salaries(yearID=c(2010,2011,2012,2013,2014)) 

aussi,

salar09-05<-Salaries(yearID=c(2010:2014)) 

et

sqldf("select * from salaries where yearID > 2009 and date < 2015") 

ni l'un d'entre eux travaillent.

+0

Avez-vous voulu dire 'data.frame (yearID = c (2010, ..' 'Il suffit de faire sous-ensemble (salaires, yearID% en% 2010:. 2014)' – akrun

+0

Oui, mais je l'ai déjà utilisé dans le premier code où mon cadre de données est Salaires – Yahyaotaif

Répondre

1

Vous devez utiliser des crochets pour le sous-ensemble.

df <- Salaries[Salaries$yearID %in% c(2010,2011,2012,2013,2014), ] 

ou

df <- Salaries[Salaries$yearID >= 2010 & Salaries$yearID <=2014, ] 

Un seul "=" est un opérateur d'affectation, pas un test d'égalité.

+0

vous auriez besoin de Salaires $ yearID – user20650

+0

Je reçois cette erreur avec tous les codes que j'ai exécutés: Erreur dans '[.data.frame' (Salaires, yearID> = 2010 & yearID <= 2014,): objet 'yearID' introuvable – Yahyaotaif

+0

Code fixe nécessaire pour indiquer R où trouver yearID –

2

Nous pouvons utiliser subset avec %in%

subset(Salaries, yearID %in% 2010:2014)