У меня есть таблица данных, содержащая тысячи фирм, которые можно идентифицировать по уникальному идентификатору.Это данные в длинном формате, и каждая фирма должна появляться дважды в разные годы (временные ряды в разрезе за два года).
Однако не все фирмы появляются в оба года, и я пытаюсь создатьсбалансированная панель длинных форматов, в которой остаются только фирмы, появляющиеся в оба года.Как мне это сделать?
Это пример таблицы данных для иллюстрации проблемы:
example <- matrix(c(1,1,2,3,3,2013,2016,2013,2013,2016), ncol=2)
colnames(example) <- c('id', 'year')
example.table <- data.table(example)
example.table
id year
1: 1 2013
2: 1 2016
3: 2 2013
4: 3 2013
5: 3 2016
В этом примере мне нужен код / функция, которая позволяет исключить строкуфирма с идентификатором «2», потому что в 2016 году она не соответствует. Другими словами: мне нужен код / функция, которая сравнивает каждую строку с предыдущей и последующей строкой и исключает ее, если в столбце идентификатора нет соответствия.
Я потратил много часов, но, похоже, достиг предела своих знаний R и был бы признателен за любую поддержку.Спасибо!