2017-01-10 6 views
-1

У меня есть 3 разных набора данных, в двух из них есть столбцы «день», «месяц» и «год», такие как 1, January и 2016, а в третьем - столбец «дата», как 1-1-2016. Я хочу объединить 3 столбца в двух наборах данных в новый столбец date, как третий набор данных, чтобы объединить 3 набора данных в один. Есть идеи?слияние номеров с номерами и строками в R

ответ

0

Вставить столбцы и преобразовать в дату:

df$date <- as.Date(paste(df$day, df$month, df$year , sep = "-") , format = "%d-%m-%Y") 

Из пакета tidyr:

library(tidyr) 
df <- df %>% unite(col = date, day, month, year, sep = "-") 
+0

приятно !! позже используйте 'join_all()' из пакета 'plyr' для слияния на ходу –

+0

Большое спасибо :) Это работает! – Lilian

+0

Я пробовал df <- df %>% unite (col = date, day, month, year, sep = "-") , и теперь новый столбец «дата» появляется как 1 января 2016 года. Но я хочу преобразовать его в форму 1-1-2016. Я попробовал df $ date <- strftime (df $ date, format = "% B-% d-% Y"), но появилась ошибка «Ошибка в as.POSIXlt.character (x, tz = tz): символьная строка не в стандартном однозначном формате « – Lilian

Смежные вопросы