Manipulation de données avec data.table en R
Matt Dowle, Arun Srinivasan
Instructors, DataCamp
Les expressions data.table peuvent s'enchaîner, c.-à-d. x[...][...][...]
step_1 <- batrips[duration > 3600]
step_2 <- step_1[duration > 3600][order(duration)]
step_2[1:3]
# Identique à batrips[duration > 3600]batrips[duration > 3600][order(duration)]batrips[duration > 3600][order(duration)][1:3]
trip_id duration
295912 3601
347471 3602
536050 3602
# Trois stations de départ avec la plus faible durée moyenne
step_1 <- batrips[, .(mn_dur = mean(duration)), by = "start_station"]
step_2 <- step_1[order(mn_dur)]
step_2[1:3]
# Trois stations de départ avec la plus faible durée moyenne
batrips[, .(mn_dur = mean(duration)),
by = "start_station"][order(mn_dur)][1:3]
start_station mn_dur
2nd at Folsom 551.0807
Temporary Transbay Terminal (Howard at Beale) 655.8563
2nd at South Park 697.7034
uniqueN() est une fonction utilitaire qui renvoie un entier indiquant le nombre de valeurs uniques dans l'objet d'entréedata.frames et data.tables.id <- c(1, 2, 2, 1)
uniqueN(id)
2
x <- data.table(id, val = 1:4)
id val
1 1
2 2
2 3
1 4
uniqueN(x)
4
uniqueN(x, by = "id")
2
Calculez le nombre total d'identifiants de vélos uniques par mois
ans <- batrips[, uniqueN(bike_id), by = month(start_date)]
head(ans, 3)
month V1 ## <~~ auto naming of cols
1 605
2 608
3 631
Manipulation de données avec data.table en R