2016-11-28 4 views
-2

Я вынимаю данные из sql, одно из полей - тип даты, но по какой-то причине R распознает эти данные как факторы.Изменить тип данных из Факторов на дату в R

это как R распознать это поле:

$ RegDate : Factor w/ 666 levels "2015-02-02","2015-02-03",..: 1 1 1 1 1 1 1 1 2 2 ... 

Я попробовал несколько способов, чтобы изменить тип, как

as.Date(RawDate$RegDate, format = "%m/%d/%Y %H:%M:%S") - ничего не изменило

as.POSIXct(x,format="%Y-%m-%d) - когда я использовал этот вид of funcation i получил все НС

Любая идея, как мне это сделать? Thanks

+0

Вы должны преобразовать его в класс 'Date' с' as.Date (RawDate $ RegDate) ' – akrun

ответ

0

Это вопрос format. «RegDate» уже в том же формате, что и класс Date. Итак, что нам нужно, это просто упаковка с as.Date

RawDate$RegDate <- as.Date(RawDate$RegDate) 

Причина, почему он получил прочитать как factor переменная из опции по умолчанию stringsAsFactors=TRUE для character элементов в read.csv/read.table или от какой-либо функции вы использовали. Один из способов - указать аргумент colClasses в read.csv/read.table