I have a data frame:
data_source <-c("s1", "s1", "s1", "s1", "s1", "s1")
lake <-c("blue lake", "blue lake", "blue lake", "mirror lake", "mirror lake",
"mirror lake")
sample <-c("upper", "mid", "bottom", "upper", "mid", "bottom")
df <-data.frame(cbind(data_source, lake, sample))
df
I have constructed the following id columns:
df$source_id <-"s1"
df$lake_id <-paste(df$source_id, as.numeric(df$lake), sep = "_")
df$sample_id <-paste(df$lake_id, as.numeric(as.factor(df$lake_id)), sep = "_")
However, I want the sample_id
column to look like this:
df$desired_id <-c("s1_l1_1", "s1_l1_2", "s1_l1_3", "s1_l2_1", "s1_l2_2", "s1_l2_3")
I can't figure out how to calculate a cumulative sample number by lake. Thanks in advance!