Форматирование даты с использованием функции strptime в R - PullRequest
0 голосов
/ 28 марта 2020

Я загрузил набор Arbuthnot из R

data('arbuthnot')
arbuthnot<-data.frame(arbuthnot)

Теперь переменная года в этом наборе данных является целочисленной переменной

str(arbuthnot)
'data.frame':   82 obs. of  3 variables:
 $ year : int  1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 ...
 $ boys : int  5218 4858 4422 4994 5158 5035 5106 4917 4703 5359 ...
 $ girls: int  4683 4457 4102 4590 4839 4820 4928 4605 4457 4952 ...

Итак, чтобы преобразовать ее в объект Date, Я делаю следующее

arbuthnot$year<-strptime(arbuthnot$year,'%Y')
str(arbuthnot)
'data.frame':   82 obs. of  3 variables:
 $ year : POSIXlt, format: "1629-03-28" "1630-03-28" "1631-03-28" "1632-03-28" ...
 $ boys : int  5218 4858 4422 4994 5158 5035 5106 4917 4703 5359 ...
 $ girls: int  4683 4457 4102 4590 4839 4820 4928 4605 4457 4952 ...

Я не хочу, чтобы R автоматически добавлял дату и месяц в переменную года. Вместо этого я хочу, чтобы он содержал только переменную года. Поэтому в идеале я хочу, чтобы прогон str (arbuthnot) выглядел так:

str(arbuthnot)
'data.frame':   82 obs. of  3 variables:
 $ year : POSIXlt, format: "1629" "1630" "1631" "1632" ...
 $ boys : int  5218 4858 4422 4994 5158 5035 5106 4917 4703 5359 ...
 $ girls: int  4683 4457 4102 4590 4839 4820 4928 4605 4457 4952 ...

Почему R автоматически добавляет текущий месяц и дату (сегодня 28 марта) и что я могу сделать, чтобы остановить это? * * 1013

1 Ответ

0 голосов
/ 28 марта 2020

Возможно это?

strftime("1629-03-28", format= '%Y', usetz = FALSE)
[1] "1629" 
...