Поменяйте tz в тибле с помощью lubridate - PullRequest
1 голос
/ 02 апреля 2020

У меня есть тиббл, подобный следующему, полученный из library(nycflights13):

   arr_time             dep_tz            arr_tz             
   <dttm>               <chr>             <chr>              
 1 2013-01-01 03:30:00  America/New_York  America/Chicago    
 2 2013-01-01 03:50:00  America/New_York  America/Chicago    
 3 2013-01-01 04:23:00  America/New_York  America/New_York   
 4 2013-01-01 05:04:00  America/New_York  America/Puerto_Rico
 5 2013-01-01 03:12:00  America/New_York  America/New_York  
 ...with 328,053 more rows

Я хочу изменить tzone с arr_time на значение, указанное в arr_tz.

Я тестировал функцию with_tz() из lubridate, но безуспешно.

Любая помощь? Заранее спасибо,

Альберто.

1 Ответ

1 голос
/ 02 апреля 2020

Мы можем использовать map2

library(dplyr)
library(purrr)
library(lubridate)
df1 %>%
     mutate(arr_time = map2(arr_time, arr_tz, ~ with_tz(.x, tzone = .y)))
...