Добавить переменную для группировки данных по уникальным комбинациям переменных

2
задан cb14 19 February 2019 в 17:01
поделиться

2 ответа

Мы можем использовать .GRP из data.table после группировки по «Дата», «Местоположение»

library(data.table)
setDT(df)[, Combo := .GRP, .(Date, Location)]
df
#   Date   Location Var1 Var2 Combo
#1: 2018       Ohio    A    1     1
#2: 2018       Ohio    B    2     1
#3: 2018    Arizona    C    3     2
#4: 2018    Arizona    D    4     2
#5: 2018   Nebraska    E    5     3
#6: 2017   Nebraska    F    6     4
#7: 2017 New Mexico    G    7     5
#8: 2016      Idaho    H    8     6
<час>

Или используя rleid

setDT(df)[, Combo := rleid(Date, Location)]
0
ответ дан akrun 19 February 2019 в 17:01
поделиться

И

df <- mutate(df,Combo = as.integer(interaction(Date,Location,drop = TRUE)))

и

df <- mutate(df,Combo = as.integer(factor(paste0(Date,Location))))

являются опциями, хотя они упорядочивают уровни не в том порядке, в котором они появляются в данных.

0
ответ дан joran 19 February 2019 в 17:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: