Удаление метки времени, чтобы включить только месяц и день - PullRequest
0 голосов
/ 14 марта 2019

У меня есть таблица с именем "rejected_at" в кадре данных "Job_applications".Формат: «М / ДД / ГГГГ Ч: М: С PM / AM».Теперь я хочу создать новую таблицу, которая просто имеет "M / DD".Как мне это сделать? введите описание изображения здесь

Ответы [ 3 ]

2 голосов
/ 14 марта 2019

Мы можем преобразовать в DateTime класс и затем извлечь month и day

v1 <- as.POSIXct(df1$rejected_at, "%m/%d/%Y %H:%M:%S")
format(v1, "%d")
format(v1, "%m")

Или, если нам нужен необходимый формат %m/%d

format(v1, "%m/%d")

Или используя tidyverse

library(dplyr)
library(lubridate)
df1 %>%
    mutate(rejected_at = mdy_hms(rejected_at),
           day = day(rejected_at),
           month = month(rejected_at))
1 голос
/ 14 марта 2019

Предполагая, что столбец rejected_at - это просто текст, вы можете попробовать использовать sub здесь:

x <- "12/30/2018 4:05:44 PM"
sub("/[^/]+$", "", x)

[1] "12/30"

Или, в вашем случае:

Job_applications$new_col <- sub("/[^/]+$", "", Job_applications$rejected_at)

Редактировать:

Если вы также хотели сохранить год, то мы можем попробовать использовать sub с группой захвата, нацеленной на полную дату:

sub("(\\d+/\\d+/\\d+).*", "\\1", x)

[1] "12/30/2018"
0 голосов
/ 14 марта 2019

Вы можете сделать это, используя lubridate

library(lubridate)

new_date <- mdy_hms("08/14/2017 09:59:06 PM")

new1 <- paste0(month(new_date),"/",day(new_date))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...