Začněte nyníZačněte zdarma

Vytváření a formátování časových údajů

Podobně jako při práci s daty můžeš použít as.POSIXct() pro převod řetězce znaků na objekt POSIXct a format() pro převod objektu POSIXct zpět na řetězec znaků. K dispozici máš celou řadu symbolů:

  • %H: hodiny jako desetinné číslo (00–23)
  • %I: hodiny jako desetinné číslo (01–12)
  • %M: minuty jako desetinné číslo
  • %S: sekundy jako desetinné číslo
  • %T: zkrácený zápis pro typický formát %H:%M:%S
  • %p: indikátor AM/PM

Úplný seznam konverzních symbolů najdeš v dokumentaci strptime přímo v konzoli:

?strptime

Funkce as.POSIXct() používá pro porovnávání řetězců znaků výchozí formát %Y-%m-%d %H:%M:%S. V tomto cvičení se rozdílnými časovými pásmy nezabýváme.

Toto cvičení je součástí kurzu

Intermediate R

Zobrazit kurz

Pokyny k cvičení

  • Převeď dva řetězce reprezentující časové razítko, str1 a str2, na objekty POSIXct s názvy time1 a time2.
  • Pomocí format() vytvoř z time1 řetězec obsahující pouze minuty.
  • Z time2 extrahuj hodiny a minuty ve formátu „hodiny:minuty AM/PM". Správné konverzní symboly najdeš v textu zadání výše!

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Definition of character strings representing times
str1 <- "May 23, '96 hours:23 minutes:01 seconds:45"
str2 <- "2012-3-12 14:23:08"

# Convert the strings to POSIXct objects: time1, time2
time1 <- as.POSIXct(str1, format = "%B %d, '%y hours:%H minutes:%M seconds:%S")


# Convert times to formatted strings
Upravit a spustit kód