R లో తేదీలతో పని చేయడం (ప్రాథమిక సామర్థ్యాలు, అలాగే లూబ్రిడేట్ మరియు టైమ్‌పీరియడ్స్‌ఆర్ ప్యాకేజీలు)

ఏదైనా ప్రోగ్రామింగ్ భాషలో ప్రస్తుత తేదీని పొందండి, ఇది "హలో వరల్డ్!"కి సమానమైన ఆపరేషన్. R భాష మినహాయింపు కాదు.

ఈ కథనంలో, R భాష యొక్క ప్రాథమిక వాక్యనిర్మాణంలో తేదీలతో పని ఎలా పని చేస్తుందో చూద్దాం మరియు తేదీలతో పని చేస్తున్నప్పుడు దాని సామర్థ్యాలను విస్తరించే అనేక ఉపయోగకరమైన ప్యాకేజీలను కూడా పరిశీలిస్తాము:

  • lubridate - తేదీల మధ్య అంకగణిత గణనలను నిర్వహించడానికి మిమ్మల్ని అనుమతించే ప్యాకేజీ;
  • timeperiodsR - సమయ విరామాలు మరియు వాటి భాగాలతో పని చేయడానికి ఒక ప్యాకేజీ.

R లో తేదీలతో పని చేయడం (ప్రాథమిక సామర్థ్యాలు, అలాగే లూబ్రిడేట్ మరియు టైమ్‌పీరియడ్స్‌ఆర్ ప్యాకేజీలు)

కంటెంట్

మీకు డేటా విశ్లేషణపై మరియు ప్రత్యేకించి R భాషపై ఆసక్తి ఉంటే, మీరు నాపై ఆసక్తి కలిగి ఉండవచ్చు టెలిగ్రామ్ и YouTube ఛానెల్‌లు. చాలా కంటెంట్ R భాషకు అంకితం చేయబడింది.

  1. ప్రాథమిక R సింటాక్స్‌లో తేదీలతో పని చేస్తోంది
    <span style="font-family: arial; ">10</span> వచనాన్ని తేదీకి మార్చండి
    <span style="font-family: arial; ">10</span> ప్రాథమిక R లో తేదీ భాగాలను సంగ్రహించడం
  2. లూబ్రిడేట్ ప్యాకేజీని ఉపయోగించి తేదీలతో పని చేస్తోంది
    <span style="font-family: arial; ">10</span> లూబ్రిడేట్ ఉపయోగించి వచనాన్ని తేదీకి మార్చండి
    <span style="font-family: arial; ">10</span> లూబ్రిడేట్ ప్యాకేజీని ఉపయోగించి తేదీ భాగాలను సంగ్రహించడం
    <span style="font-family: arial; ">10</span> తేదీలతో అంకగణిత కార్యకలాపాలు
  3. పీరియడ్స్, టైమ్‌పీరియడ్స్ఆర్ ప్యాకేజీతో సరళీకృత పని
    <span style="font-family: arial; ">10</span> సమయ వ్యవధిలో సమయ విరామాలుR
    <span style="font-family: arial; ">10</span> timeperiodsRని ఉపయోగించి తేదీల వెక్టర్‌ను ఫిల్టర్ చేయడం
  4. తీర్మానం

ప్రాథమిక R సింటాక్స్‌లో తేదీలతో పని చేస్తోంది

వచనాన్ని తేదీకి మార్చండి

ప్రాథమిక R తేదీలతో పని చేయడానికి ఫంక్షన్ల సమితిని కలిగి ఉంది. ప్రాథమిక వాక్యనిర్మాణం యొక్క ప్రతికూలత ఏమిటంటే, ఫంక్షన్ పేర్లు మరియు వాదనలు చాలా చెల్లాచెదురుగా ఉన్నాయి మరియు ఆచరణాత్మకంగా తార్కిక కనెక్షన్ లేదు. అయితే, మీరు భాష యొక్క ప్రాథమిక విధులను తెలుసుకోవాలి, కాబట్టి మేము వారితో ప్రారంభిస్తాము.

చాలా తరచుగా, csv ఫైల్‌లు లేదా ఇతర మూలాల నుండి R లోకి డేటాను లోడ్ చేస్తున్నప్పుడు, మీరు తేదీని టెక్స్ట్‌గా స్వీకరిస్తారు. ఈ వచనాన్ని సరైన డేటా రకానికి మార్చడానికి, ఫంక్షన్‌ని ఉపయోగించండి 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() తేదీని రెండు ఫార్మాట్లలో అంగీకరిస్తుంది: YYYY-MM-DD లేదా YYYY/MM/DD.
మీ డేటా సెట్‌లో ఏదైనా ఇతర ఫార్మాట్‌లో తేదీలు ఉంటే, మీరు ఆర్గ్యుమెంట్‌ని ఉపయోగించవచ్చు 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".

మీరు ప్రామాణిక ఫార్మాట్‌లకు అనుగుణంగా లేని తేదీని స్వీకరించినప్పుడు పరిస్థితులు ఉన్నాయి (YYYY-MM-DD లేదా YYYY/MM/DD), కానీ మీ ఆపరేటింగ్ సిస్టమ్‌లో ఇన్‌స్టాల్ చేయబడిన డిఫాల్ట్‌కు భిన్నమైన భాషలో కూడా ఉంటుంది. ఉదాహరణకు, మీరు తేదీని ఇలా సూచించిన డేటాను డౌన్‌లోడ్ చేసారు: “డిసెంబర్ 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 pm నుండి సెకన్ల సంఖ్యగా తేదీ మరియు సమయాన్ని కలిగి ఉంటే, దానిని తేదీకి మార్చడానికి:

# Конвертируем 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 వచనాన్ని తేదీగా మార్చే ప్రక్రియను గణనీయంగా సులభతరం చేస్తుంది మరియు తేదీలు మరియు సమయాలతో ఏదైనా అంకగణిత కార్యకలాపాలను నిర్వహించడానికి మిమ్మల్ని అనుమతిస్తుంది.

ప్రస్తుత తేదీ లేదా తేదీ మరియు సమయాన్ని పొందడానికి ఫంక్షన్‌లు మీకు సహాయపడతాయి today() и now().

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

స్ట్రింగ్‌ను తేదీకి మార్చడానికి lubridate ఫంక్షన్ల మొత్తం కుటుంబం ఉంది, దీని పేర్లు ఎల్లప్పుడూ మూడు అక్షరాలను కలిగి ఉంటాయి మరియు తేదీ భాగాల క్రమాన్ని సూచిస్తాయి:

  • y - సంవత్సరం
  • m - నెల
  • d - రోజు

లూబ్రిడేట్ ద్వారా వచనాన్ని తేదీకి మార్చడానికి ఫంక్షన్ల జాబితా

  • 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 — సెప్టెంబర్ 2019లో CRANలో ప్రచురించబడిన తేదీలతో పని చేయడానికి తాజా ప్యాకేజీ.

ప్యాకేజీని ఇన్‌స్టాల్ చేస్తోంది 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 లో తేదీలతో పని చేయడం (ప్రాథమిక సామర్థ్యాలు, అలాగే లూబ్రిడేట్ మరియు టైమ్‌పీరియడ్స్‌ఆర్ ప్యాకేజీలు)

అక్టోబర్ 6కి సంబంధించి మునుపటి 3 వారాలు తీసుకునే వ్యవధి మాకు అవసరం. అక్టోబరు 6తో సహా వారాన్ని చేర్చలేదు. దీని ప్రకారం, ఇది సెప్టెంబర్ 9 నుండి సెప్టెంబర్ 29 వరకు ఉంటుంది.

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 మార్కెటింగ్, ఇందులో మీ రోజువారీ సమస్యలను పరిష్కరించడంలో R భాషను ఉపయోగించడం గురించి నేను రోజూ ఉపయోగకరమైన విషయాలను పంచుకుంటాను.

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి