2016-10-24 11 views
1

ich einen großen Datenrahmen habe wie die folgendenR- hält eine feste Anzahl von Beobachtungen pro ID

enter image description here

ich, dass ich auch gleich Beobachtungen pro ID (nur 3 in diesem Fall) behalten mag wollen genug Intervalle zwischen Beobachtung zu halten (dh: eine erste und letzte zu halten, und ein anderer auf zwischen ihnen) wie kann ich meine Daten-Subset und halten die einzige erforderliche

so sein das Finale wie dieses

enter image description here

+0

Bild Urls – Ivan

+0

Bitte benutzen Sie 'dput' gebrochen werden einige Daten zur Verfügung zu stellen, mit zu arbeiten. Welchen Code hast du ausprobiert? Gibt es Regeln für die Auswahl der "mittleren" ID/Beobachtung? – emilliman5

+0

Probieren Sie 'Bibliothek (dplyr); df%>% group_by (ID)%>% sample_n (3) ' –

Antwort

2

können wir versuchen, mit data.table

library(data.table) 
setDT(df1)[, .SD[c(1,.N/2, .N)], by = ID] 
+1

Es fehlt ein Komma: setDT (df1) [, .SD [c (1, .N/2, .N)], von = ID] – Hugo

+1

vielen Dank –

+0

@MostafaHelal Bitte kreuzen Sie die Antwort an. – ddunn801

Verwandte Themen