Εργασία με ημερομηνίες στο R (βασικές δυνατότητες, καθώς και τα πακέτα λιπαντικών και χρονικών περιόδωνR)

Λάβετε την τρέχουσα ημερομηνία σε οποιαδήποτε γλώσσα προγραμματισμού, μια λειτουργία ισοδύναμη με το "Hello world!" Η γλώσσα R δεν αποτελεί εξαίρεση.

Σε αυτό το άρθρο, θα δούμε πώς λειτουργεί η εργασία με ημερομηνίες στη βασική σύνταξη της γλώσσας R και επίσης θα δούμε πολλά χρήσιμα πακέτα που επεκτείνουν τις δυνατότητές της κατά την εργασία με ημερομηνίες:

  • lubridate — ένα πακέτο που σας επιτρέπει να εκτελείτε αριθμητικούς υπολογισμούς μεταξύ ημερομηνιών.
  • timeperiodsR — ένα πακέτο για την εργασία με χρονικά διαστήματα και τα στοιχεία τους.

Εργασία με ημερομηνίες στο R (βασικές δυνατότητες, καθώς και τα πακέτα λιπαντικών και χρονικών περιόδωνR)

περιεχόμενο

Αν σας ενδιαφέρει η ανάλυση δεδομένων, και συγκεκριμένα η γλώσσα R, μπορεί να σας ενδιαφέρει η δική μου τηλεγράφημα и YouTube κανάλια. Το μεγαλύτερο μέρος του περιεχομένου είναι αφιερωμένο στη γλώσσα R.

  1. Εργασία με ημερομηνίες στη βασική σύνταξη R
    1.1. Μετατροπή κειμένου σε ημερομηνία
    1.2. Εξαγωγή στοιχείων ημερομηνίας στο βασικό R
  2. Εργασία με ημερομηνίες χρησιμοποιώντας τη συσκευασία λιπαντικού
    2.1. Μετατρέψτε κείμενο σε ημερομηνία χρησιμοποιώντας το lubridate
    2.2. Εξαγωγή εξαρτημάτων ημερομηνίας χρησιμοποιώντας τη συσκευασία λιπαντικού
    2.3. Αριθμητικές πράξεις με ημερομηνίες
  3. Απλοποιημένη εργασία με περιόδους, πακέτο timeperiodsR
    3.1. Χρονικά διαστήματα σε χρονικές περιόδουςR
    3.2. Φιλτράρισμα ενός διανύσματος ημερομηνιών χρησιμοποιώντας timeperiodsR
  4. Συμπέρασμα

Εργασία με ημερομηνίες στη βασική σύνταξη R

Μετατροπή κειμένου σε ημερομηνία

Το Basic R έχει ένα σύνολο λειτουργιών για εργασία με ημερομηνίες. Το μειονέκτημα της βασικής σύνταξης είναι ότι η περίπτωση των ονομάτων και ορισμάτων συναρτήσεων είναι πολύ διάσπαρτη και πρακτικά δεν έχει λογική σύνδεση. Ωστόσο, πρέπει να γνωρίζετε τις βασικές λειτουργίες της γλώσσας, οπότε θα ξεκινήσουμε με αυτές.

Τις περισσότερες φορές όταν φορτώνετε δεδομένα στο R, από αρχεία csv ή άλλες πηγές, λαμβάνετε μια ημερομηνία ως κείμενο. Για να μετατρέψετε αυτό το κείμενο στον σωστό τύπο δεδομένων, χρησιμοποιήστε τη συνάρτηση as.Date().

# создаём текстовый вектор с датами
my_dates <- c("2019-09-01", "2019-09-10", "2019-09-23")

# проверяем тип данных
class(my_dates)

#> [1] "character"

# преобразуем текст в дату
my_dates <- as.Date(my_dates)

# проверяем тип данных
class(my_dates)

#> [1] "Date"

Από προεπιλογή as.Date() δέχεται ημερομηνία σε δύο μορφές: ΕΕΕΕ-ΜΜ-ΗΗ ή ΕΕΕΕ/ΜΜ/ΗΗ.
Εάν το σύνολο δεδομένων σας περιέχει ημερομηνίες σε κάποια άλλη μορφή, μπορείτε να χρησιμοποιήσετε το όρισμα format.

as.Date("September 26, 2019", format = "%B %d, %Y")

μορφή δέχεται τελεστές σε μορφή συμβολοσειράς που δηλώνουν οποιοδήποτε χρονικό διάστημα και τη μορφή του· οι πιο συχνά χρησιμοποιούμενες τιμές φαίνονται στον παρακάτω πίνακα:

Μορφή
Περιγραφή

%d
Αριθμός ημέρας σε μήνα

%a
Συντομογραφία για το όνομα της ημέρας της εβδομάδας

%A
Πλήρες όνομα της ημέρας της εβδομάδας

%w
Αριθμός ημέρας της εβδομάδας (0-6, όπου 0 είναι Κυριακή)

%m
Διψήφιος προσδιορισμός μήνα (01-12)

%b
Συντομογραφία του ονόματος του μήνα (απρίλιος, Μάρτιος,…)

%B
Όνομα πλήρους μήνα

%y
Διψήφιος χαρακτηρισμός έτους

%Y
Τετραψήφιος χαρακτηρισμός έτους

%j
Αριθμός ημέρας το έτος (001 - 366)

%U
Αριθμός της εβδομάδας το έτος (00 - 53), αρχή της εβδομάδας Κυριακή

%W
Αριθμός εβδομάδας το έτος (00 - 53), αρχή της εβδομάδας Δευτέρα

Συνεπώς, «26 Σεπτεμβρίου 2019» είναι το πλήρες όνομα του μήνα, της ημερομηνίας και του έτους. Αυτή η μορφή ημερομηνίας μπορεί να περιγραφεί χρησιμοποιώντας τελεστές ως εξής:"%B %d, %Y".

Πού:

  • %B — Πλήρες όνομα του μήνα
  • %d — Αριθμός ημέρας του μήνα
  • %Y — Τετραψήφιος χαρακτηρισμός έτους

Κατά την περιγραφή της μορφής ημερομηνίας, είναι σημαντικό να συμπεριλάβετε όλους τους πρόσθετους χαρακτήρες από τη συμβολοσειρά σας, όπως παύλες, κόμματα, τελείες, κενά κ.λπ. Στο παράδειγμά μου, "26 Σεπτεμβρίου 2019", υπάρχει κόμμα μετά την ημερομηνία και πρέπει επίσης να βάλετε κόμμα στην περιγραφή της μορφής:"%B %d, %Y".

Υπάρχουν περιπτώσεις που λαμβάνετε μια ημερομηνία που όχι μόνο δεν αντιστοιχεί σε τυπικές μορφές (ΕΕΕΕ-ΜΜ-ΗΗ ή ΕΕΕΕ/ΜΜ/ΗΗ), αλλά και σε γλώσσα που διαφέρει από την προεπιλεγμένη που είναι εγκατεστημένη στο λειτουργικό σας σύστημα. Για παράδειγμα, κατεβάσατε δεδομένα όπου η ημερομηνία υποδεικνύεται ως εξής: "15 Δεκεμβρίου 2019". Πριν μετατρέψετε αυτήν τη συμβολοσειρά σε ημερομηνία, πρέπει να αλλάξετε τις τοπικές ρυθμίσεις.

# Меняем локаль
Sys.setlocale("LC_TIME", "Russian")
# Конвертируем строку в дату
as.Date("Декабрь 15, 2019 г.", format = "%B %d, %Y")

Εξαγωγή στοιχείων ημερομηνίας στο βασικό R

Δεν υπάρχουν πολλές συναρτήσεις στο βασικό R που σας επιτρέπουν να εξαγάγετε οποιοδήποτε μέρος μιας ημερομηνίας από ένα αντικείμενο κλάσης Ημερομηνία.

current_date <- Sys.Date() # текущая дата
weekdays(current_date)     # получить номер дня недели
months(current_date)       # получить номер месяца в году
quarters(current_date)     # получить номер квартала в году

Εκτός από την κύρια κλάση αντικειμένου Ημερομηνία στο βασικό R υπάρχουν 2 ακόμη τύποι δεδομένων που αποθηκεύουν μια χρονική σήμανση: POSIXlt, POSIXct. Η κύρια διαφορά μεταξύ αυτών των τάξεων και Ημερομηνία είναι ότι εκτός από την ημερομηνία που αποθηκεύουν ώρα.

# получить текущую дату и время
current_time <- Sys.time()

# узнать класс объекта current_time 
class(current_time)

# "POSIXct" "POSIXt"

Λειτουργία Sys.time() επιστρέφει την τρέχουσα ημερομηνία και ώρα στη μορφή POSIXct. Αυτή η μορφή είναι παρόμοια σε νόημα με UNIXTIME, και αποθηκεύει τον αριθμό των δευτερολέπτων από την αρχή της εποχής UNIX (μεσάνυχτα (UTC) από 31 Δεκεμβρίου 1969 έως 1 Ιανουαρίου 1970).

Κατηγορία POSIXlt Επίσης αποθηκεύει την ώρα και την ημερομηνία και όλα τα στοιχεία τους. Επομένως, είναι ένα αντικείμενο με πιο σύνθετη δομή, αλλά από το οποίο είναι εύκολο να ληφθεί οποιοδήποτε στοιχείο ημερομηνίας και ώρας επειδή στην πραγματικότητα POSIXlt αυτό λίστα.

# Получаем текущую дату и время
current_time_ct <- Sys.time()

# Преобразуем в формат POSIXlt
current_time_lt <- as.POSIXlt(current_time_ct)

# извлекаем компоненты даты и времени
current_time_lt$sec   # секунды
current_time_lt$min   # минуты
current_time_lt$hour  # часы
current_time_lt$mday  # день месяца
current_time_lt$mon   # месяц
current_time_lt$year  # год
current_time_lt$wday  # день недели
current_time_lt$yday  # день года
current_time_lt$zone  # часовой пояс

Μετατροπή αριθμητικών και δεδομένων κειμένου σε μορφές POSIX* πραγματοποιούνται από λειτουργίες as.POSIXct() и as.POSIXlt(). Αυτές οι συναρτήσεις έχουν ένα μικρό σύνολο ορισμάτων.

  • x — Αριθμός, συμβολοσειρά ή αντικείμενο κλάσης Ημερομηνία, το οποίο πρέπει να μετατραπεί.
  • tz — Ζώνη ώρας, προεπιλεγμένη "GMT";
  • Μορφή — Περιγραφή της μορφής ημερομηνίας στην οποία αντιπροσωπεύονται τα δεδομένα που διαβιβάζονται στο όρισμα x.
  • προέλευση — Χρησιμοποιείται μόνο κατά τη μετατροπή ενός αριθμού σε POSIX· πρέπει να μεταβιβάσετε ένα αντικείμενο ημερομηνίας και ώρα από την οποία υπολογίζονται τα δευτερόλεπτα σε αυτό το όρισμα. Συνήθως χρησιμοποιείται για μετάφραση από το UNIXTIME.

Εάν υπάρχουν πληροφορίες ημερομηνίας και ώρας UNIXTIME, στη συνέχεια, για να τα μετατρέψετε σε μια σαφή, ευανάγνωστη ημερομηνία, χρησιμοποιήστε το ακόλουθο παράδειγμα:

# Конвертируем UNIXTIME в читаемую дату 
as.POSIXlt(1570084639,  origin = "1970-01-01")

Στην προέλευση μπορείτε να καθορίσετε οποιαδήποτε χρονική σήμανση. Για παράδειγμα, εάν τα δεδομένα σας περιέχουν την ημερομηνία και την ώρα ως τον αριθμό των δευτερολέπτων από τις 15 Σεπτεμβρίου 2019 12:15 μ.μ., τότε για να τα μετατρέψετε σε ημερομηνία χρησιμοποιήστε:

# Конвертируем UNIXTIME в дату учитывая что начало отсчёта 15 сентября 2019 12:15
as.POSIXlt(1546123,  origin = "2019-09-15 12:15:00")

Εργασία με ημερομηνίες χρησιμοποιώντας τη συσκευασία λιπαντικού

lubridate Ίσως το πιο δημοφιλές πακέτο για εργασία με ημερομηνίες στη γλώσσα R. Σας παρέχει τρεις επιπλέον κατηγορίες.

  • διάρκειες — διάρκεια, δηλ. αριθμός δευτερολέπτων μεταξύ δύο χρονικών σφραγίδων·
  • περίοδοι - περίοδοι σάς επιτρέπουν να κάνετε υπολογισμούς μεταξύ ημερομηνιών σε διαστήματα που είναι ευανάγνωστα από τον άνθρωπο: ημέρες, μήνες, εβδομάδες και ούτω καθεξής.
  • διαστήματα - αντικείμενα που παρέχουν το σημείο έναρξης και λήξης στο χρόνο.

Η εγκατάσταση πρόσθετων πακέτων στη γλώσσα R πραγματοποιείται χρησιμοποιώντας την τυπική λειτουργία install.packages().

Εγκατάσταση του πακέτου lubridate:

install.packages("lubridate")

Μετατρέψτε κείμενο σε ημερομηνία χρησιμοποιώντας το lubridate

Χαρακτηριστικά πακέτου lubridate απλοποιεί σημαντικά τη διαδικασία μετατροπής κειμένου σε ημερομηνία και σας επιτρέπει επίσης να πραγματοποιείτε οποιεσδήποτε αριθμητικές πράξεις με ημερομηνίες και ώρες.

Οι λειτουργίες θα σας βοηθήσουν να λάβετε την τρέχουσα ημερομηνία ή ημερομηνία και ώρα today() и now().

today() # текущая дата
now()   # текущая дата и время

Για να μετατρέψετε μια συμβολοσειρά σε ημερομηνία στο lubridate Υπάρχει μια ολόκληρη οικογένεια συναρτήσεων των οποίων τα ονόματα αποτελούνται πάντα από τρία γράμματα και υποδεικνύουν την ακολουθία των στοιχείων ημερομηνίας:

  • y - έτος
  • m - μήνας
  • δ - ημέρα

Λίστα λειτουργιών για τη μετατροπή κειμένου σε ημερομηνία μέσω του λιπαντικού

  • ymd()
  • ydm()
  • mdy()
  • myd()
  • dmy()
  • dym()
  • yq()

Μερικά παραδείγματα μετατροπής συμβολοσειρών σε ημερομηνίες:

ymd("2017 jan 21")
mdy("March 20th, 2019")
dmy("1st april of 2018")

Οπως βλέπεις lubridate Είναι πολύ πιο αποτελεσματικό στην αναγνώριση των περιγραφών ημερομηνιών ως κειμένου και σας επιτρέπει να μετατρέπετε κείμενο σε ημερομηνία χωρίς να χρησιμοποιείτε πρόσθετους τελεστές για την περιγραφή της μορφής.

Εξαγωγή εξαρτημάτων ημερομηνίας χρησιμοποιώντας τη συσκευασία λιπαντικού

Επίσης χρησιμοποιώντας lubridate μπορείτε να λάβετε οποιοδήποτε στοιχείο από μια ημερομηνία:

dt <- ymd("2017 jan 21")

year(dt)  # год
month(dt) # месяц
mday(dt)  # день в месяце
yday(dt)  # день в году
wday(dt)  # день недели

Αριθμητικές πράξεις με ημερομηνίες

Αλλά η πιο σημαντική και βασική λειτουργικότητα lubridate είναι η δυνατότητα εκτέλεσης διαφόρων αριθμητικών πράξεων με ημερομηνίες.

Η στρογγυλοποίηση ημερομηνίας εκτελείται από τρεις λειτουργίες:

  • floor_date — στρογγυλοποίηση στον πλησιέστερο παρελθοντικό χρόνο
  • ceiling_date — στρογγυλοποίηση στον εγγύς μέλλοντα χρόνο
  • round_date - στρογγυλοποίηση στην πλησιέστερη ώρα

Κάθε μία από αυτές τις συναρτήσεις έχει ένα όρισμα μονάδαπου σας επιτρέπει να καθορίσετε τη μονάδα στρογγυλοποίησης: δευτερόλεπτο, λεπτό, ώρα, ημέρα, εβδομάδα, μήνας, δίμηνος, τρίμηνο, εποχή, εξάμηνο, έτος

dt <- ymd("2017 jan 21")

round_date(dt, unit = "month")    # округлить до месяца
round_date(dt, unit = "3 month")  # округлить до 3 месяцев
round_date(dt, unit = "quarter")  # округлить до квартала
round_date(dt, unit = "season")   # округлить до сезона
round_date(dt, unit = "halfyear") # округлить до полугодия

Ας βρούμε λοιπόν πώς να λάβουμε μια ημερομηνία που είναι 8 ημέρες μετά την τρέχουσα ημερομηνία και ας κάνουμε διάφορους άλλους αριθμητικούς υπολογισμούς μεταξύ των δύο ημερομηνιών.

today() + days(8)   # какая дата будет через 8 дней
today() - months(2) # какая дата была 2 месяца назад
today() + weeks(12) # какая дата будет через 12 недель
today() - years(2)  # какая дата была 2 года назад

Απλοποιημένη εργασία με περιόδους, πακέτο timeperiodsR.

timeperiodsR — ένα νέο πακέτο για την εργασία με ημερομηνίες που δημοσιεύτηκε στο CRAN τον Σεπτέμβριο του 2019.

Εγκατάσταση του πακέτου timeperiodsR:

install.packages("timeperiodsR")

Ο κύριος σκοπός είναι να προσδιοριστεί γρήγορα ένα συγκεκριμένο χρονικό διάστημα σε σχέση με μια δεδομένη ημερομηνία. Για παράδειγμα, χρησιμοποιώντας τις λειτουργίες του μπορείτε εύκολα:

  • Λάβετε την περασμένη εβδομάδα, μήνα, τρίμηνο ή έτος στο R.
  • Λάβετε έναν καθορισμένο αριθμό χρονικών διαστημάτων σε σχέση με μια ημερομηνία, για παράδειγμα τις τελευταίες 4 εβδομάδες.
  • Είναι εύκολο να εξαγάγετε τα συστατικά του από το χρονικό διάστημα που προκύπτει: την ημερομηνία έναρξης και λήξης, τον αριθμό των ημερών που περιλαμβάνονται στο διάστημα, ολόκληρη τη σειρά ημερομηνιών που περιλαμβάνονται σε αυτό.

Όνομα όλων των λειτουργιών του πακέτου timeperiodsR είναι διαισθητικά και αποτελούνται από δύο μέρη: κατεύθυνση_διάστημα, όπου:

  • κατεύθυνση στο οποίο πρέπει να μετακινηθείτε σε σχέση με μια δεδομένη ημερομηνία: last_n, προηγούμενο, αυτό, επόμενο, επόμενο_n.
  • προσωρινή διάστημα για να υπολογίσετε την περίοδο: ημέρα, εβδομάδα, μήνας, τρίμηνο, έτος.

Πλήρες σετ χαρακτηριστικών:

  • last_n_days()
  • last_n_weeks()
  • last_n_months()
  • last_n_quarters()
  • last_n_years()
  • previous_week()
  • previous_month()
  • previous_quarter()
  • previous_year()
  • this_week()
  • this_month()
  • this_quarter()
  • this_year()
  • next_week()
  • next_month()
  • next_quarter()
  • next_year()
  • next_n_days()
  • next_n_weeks()
  • next_n_months()
  • next_n_quarters()
  • next_n_years()
  • custom_period()

Χρονικά διαστήματα σε χρονικές περιόδουςR

Αυτές οι λειτουργίες είναι χρήσιμες σε περιπτώσεις όπου πρέπει να δημιουργήσετε αναφορές με βάση δεδομένα από την προηγούμενη εβδομάδα ή μήνα. Για να λάβετε τον τελευταίο μήνα, χρησιμοποιήστε την ομώνυμη συνάρτηση previous_month():

prmonth <- previous_month()

Μετά από αυτό θα έχετε ένα αντικείμενο πρώτο μήνα κατηγορία tpr, από το οποίο μπορούν εύκολα να ληφθούν τα ακόλουθα εξαρτήματα:

  • την ημερομηνία έναρξης της περιόδου, στο παράδειγμά μας αυτός είναι ο τελευταίος μήνας
  • ημερομηνία λήξης περιόδου
  • αριθμός ημερών που περιλαμβάνονται στην περίοδο
  • σειρά ημερομηνιών που περιλαμβάνονται στην περίοδο

Επιπλέον, μπορείτε να αποκτήσετε καθένα από τα εξαρτήματα με διαφορετικούς τρόπους:

# первый день периода
prmonth$start
start(prmonth)

# последний день периода
prmonth$end
end(prmonth)

# последовательность дат
prmonth$sequence
seq(prmonth)

# количество дней входящих в период
prmonth$length
length(prmonth)

Μπορείτε επίσης να λάβετε οποιοδήποτε από τα στοιχεία χρησιμοποιώντας το όρισμα μέρος, το οποίο υπάρχει σε κάθε μία από τις λειτουργίες του πακέτου. Πιθανές τιμές: αρχή, τέλος, ακολουθία, μήκος.

previous_month(part = "start")    # начало периода
previous_month(part = "end")      # конец периода
previous_month(part = "sequence") # последовательность дат
previous_month(part = "length")   # количество дней в периоде

Ας δούμε λοιπόν όλα τα ορίσματα που είναι διαθέσιμα στις συναρτήσεις του πακέτου timeperiodsR:

  • x — Η ημερομηνία αναφοράς από την οποία θα υπολογιστεί η χρονική περίοδος, η τρέχουσα ημερομηνία από προεπιλογή.
  • n — Ο αριθμός των διαστημάτων που θα συμπεριληφθούν στην περίοδο, για παράδειγμα τις προηγούμενες 3 εβδομάδες.
  • part — Ποιο συστατικό του αντικειμένου tpr πρέπει να πάρετε, από προεπιλογή all;
  • week_start — Το όρισμα υπάρχει μόνο σε συναρτήσεις για εργασία με εβδομάδες και σας επιτρέπει να ορίσετε τον αριθμό της ημέρας της εβδομάδας που θα θεωρείται η αρχή του. Από προεπιλογή, η έναρξη της εβδομάδας είναι Δευτέρα, αλλά μπορείτε να ορίσετε οποιαδήποτε από 1 - Δευτέρα έως 7 - Κυριακή.

Έτσι, μπορείτε να υπολογίσετε οποιαδήποτε χρονική περίοδο σε σχέση με την τρέχουσα ή οποιαδήποτε άλλη δεδομένη ημερομηνία· εδώ είναι μερικά ακόμη παραδείγματα:

# получить 3 прошлые недели
# от 6 октября 2019 года
# начало недели - понедельник
last_n_weeks(x = "2019-10-06", 
             n = 3, 
             week_start = 1)

 Time period: from  9 September of 2019, Monday to 29 September of 2019, Sunday

6 Οκτωβρίου είναι Κυριακή:
Εργασία με ημερομηνίες στο R (βασικές δυνατότητες, καθώς και τα πακέτα λιπαντικών και χρονικών περιόδωνR)

Χρειαζόμαστε μια περίοδο που, σε σχέση με τις 6 Οκτωβρίου, θα διαρκέσει τις προηγούμενες 3 εβδομάδες. Μη συμπεριλαμβανομένης της εβδομάδας που περιλαμβάνει την ίδια την 6η Οκτωβρίου. Αντίστοιχα, πρόκειται για την περίοδο από 9 Σεπτεμβρίου έως 29 Σεπτεμβρίου.

Εργασία με ημερομηνίες στο R (βασικές δυνατότητες, καθώς και τα πακέτα λιπαντικών και χρονικών περιόδωνR)

# получить месяц отстающий на 4 месяца
# от 16 сентября 2019 года
previous_month(x = "2019-09-16", n = 4)

 Time period: from  1 May of 2019, Wednesday to 31 May of 2019, Friday

Σε αυτό το παράδειγμα, μας ενδιαφέρει ο μήνας που ήταν πριν από 4 μήνες, αν ξεκινήσουμε από τις 16 Σεπτεμβρίου 2019, τότε ήταν ο Μάιος του 2019.

Φιλτράρισμα ενός διανύσματος ημερομηνιών χρησιμοποιώντας timeperiodsR

Για να φιλτράρετε ημερομηνίες σε timeperiodsR Υπάρχουν διάφοροι χειριστές:

  • %left_out% - συγκρίνει δύο αντικείμενα κλάσης tpr και επιστρέφει την τιμή από την αριστερή που λείπει από τη δεξιά.
  • %left_in% - συγκρίνει δύο αντικείμενα της κλάσης tpr και επιστρέφει τις ημερομηνίες από το αριστερό αντικείμενο που περιλαμβάνονται στο δεξί.
  • %right_out% - συγκρίνει δύο αντικείμενα κλάσης tpr και επιστρέφει την τιμή από τη δεξιά που λείπει από την αριστερή.
  • %right_in% - συγκρίνει δύο αντικείμενα της κλάσης tpr και επιστρέφει ημερομηνίες από το δεξί αντικείμενο που υπάρχουν στο αριστερό.

period1 <- this_month("2019-11-07")
period2 <- previous_week("2019-11-07")

period1 %left_in% period2   # получить даты из period1 которые входят в period2
period1 %left_out% period2  # получить даты из period1 которые не входят в period2
period1 %right_in% period2  # получить даты из period2 которые входят в period1
period1 %right_out% period2 # получить даты из period2 которые не входят в period1

Στο πακέτο timeperiodsR υπάρχει ένα επίσημο, ρωσόφωνο Λίστα αναπαραγωγής YouTube.

Συμπέρασμα

Εξετάσαμε λεπτομερώς τις κατηγορίες αντικειμένων που έχουν σχεδιαστεί στη γλώσσα R για εργασία με ημερομηνίες. Επίσης τώρα μπορείτε να εκτελείτε αριθμητικές πράξεις σε ημερομηνίες και να λαμβάνετε γρήγορα τυχόν χρονικές περιόδους χρησιμοποιώντας το πακέτο timeperiodsR.

Εάν ενδιαφέρεστε για τη γλώσσα R, σας προσκαλώ να εγγραφείτε στο κανάλι μου στο τηλεγράφημα R4 marketing, στο οποίο μοιράζομαι χρήσιμο υλικό σε καθημερινή βάση σχετικά με τη χρήση της γλώσσας R για την επίλυση των καθημερινών προβλημάτων σας.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο