Determining Group ID by Group Membership in R

Viewed 28

I have data on group members activity but the group name change overtime, and group members add\drop. I wonder if there is a way to reverse engineer groups by membership of the majority of members in R.

My data:

library(tibble)

year1 <- 
  tibble(members= c("Joe", "Max", "Sam",  "Jane", "Doug", "Ahmad", "Jeff", "Ben"), group1 = c(1, 1, 1, 1, 2, 2, 2, 2))

year2 <- 
  tibble(members= c("Joe", "Max", "Jeff", "Sam",  "Jane", "Doug", "Ahmad", "Moses"), group2 = c(5, 5, 5, 5,5, 6, 6, 6))
df <- full_join(year1, year2, by="members")

In this example, groups 1 & 2 are the same as groups 5 & 6 respectively. "Ben" left the sample. "Moses" joins group 6 in year 2 "Jeff" moved from group 1/5 to group 2/6.

I want to create constant names for groups over time according to some threshold of group membership (n>50%/75%/90%).

example of desired output:

Table of desired output

In this example constant_names1 and constant_names2 are the overtime names for groups 1\5 & 2\6.

0 Answers
Related