У меня есть такой фрейм данных:
df1 <- structure(list(user_id = c(1, 1, 1, 2, 2, 2, 3, 3, 3), param_a = c(123,
2.3, -9, 1, -0.03333, 4, -41, -12, 0.89)), .Names = c("user_id",
"param_a"), row.names = c(NA, -9L), class = c("tbl_df", "tbl",
"data.frame"))
и еще один dataframe
векторов:
df2 <- structure(list(user_id = c(1, 2, 3), param_b = c(34, 12, -0.89
)), .Names = c("user_id", "param_b"), row.names = c(NA, -3L), class = c("tbl_df",
"tbl", "data.frame"))
Теперь я хочу разделить каждую группу на df1
на соответствующиезначение в df2
:
Например, для группы пользователей 1 разделить каждую строку на param_b
первый вектор:
user_id param_a
1 123/34
1 2.3/34
1 -9/34
2 1/12
2 -0.03333/12
2 4/12
....
для пользователя 2 разделить каждую строку на param_b
секундуvector.
Посоветуйте, пожалуйста, как я могу разделить сгруппированные пользователем dataframe
по векторам для каждой группы?
PS
Если у меня df1 расширен до param_a, param_k, param_p
и df2 расширены соответственно с param_b, param_l, param_r
Как я могу выполнить этот вид операции?@nicola предложила очень хорошее решение, но я хочу его расширить.