Создание новых переменных в R на основе значений переменных разных строк в кадре данных - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть фрейм данных, df, например:

id  t  Happiness  Wealth    
1   1   5          100
2   1   5          100
3   1   5          100
1   2   3           70
2   2   9          170
3   2   2           60

Есть ли способ для поднабора данных, чтобы я мог создать новую переменную, которая представляет богатство человека (id) впредыдущий раз?Таким образом, значение для человека 2 в момент времени 2 будет 100.

1 Ответ

0 голосов
/ 27 ноября 2018

Вы также можете добиться того же, просто слияния:

df <- data.frame(id = c(1, 1, 2, 2),
            t = c(1, 2, 1, 2),
            wealth = c(10, 15, 12, 17))
previous <- df
previous[,"t"] <- previous[,"t"] +1
df <- merge(df, previous, by = c("id", "t"), all = TRUE, suffixes = c("_current", "_previous"))
na.omit(df)

  id t wealth_current wealth_previous
2  1 2             15              10
5  2 2             17              12
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...