Это мой первый вопрос о stackoverflow, и я новичок R-программист. У меня есть dataframe, где есть столбец «год», который имеет значения с 1985 по 2012 год. Они импортируются по умолчанию в качестве фактора из моего файла csv (что может быть моей первой проблемой). Я хочу создать новый вектор «Современный», который имеет значение 1 для всех строк, где дата больше 2008 года. Другой способ: я хочу указать с «1» все данные с 2009-2012 года.Как лучше всего использовать значения только для года в R
Вот мое текущее решение:
yearnum<-as.Date(year,format="%Y")
Modern<-ifelse(yearnum>"2008-12-30",1,0)
Он работает, но у меня есть несколько вопросов. 1. Я пробовал использовать функцию as.numeric
, но вместо того, чтобы давать мне значение, подобное 2006 году, он перенумеровался годами, начиная с 1. Почему? 2. Поскольку я закончил использовать функцию as.Date
, R дефолт месяца и дня до сегодняшнего месяца и дня. Могу ли я избежать этого, сохранив только год или, по крайней мере, записывая 1/1/yyyy?
Заранее спасибо.