Tenho o seguinte dataframe de amostra derretido:
df_melted <- data.frame(ID = c(21, 21, 21, 21, 49, 49, 49, 49), instance = c(1, 1, 1, 1, 1, 1, 2, 2), variable = c("causeofdeath", "deathdate", "dob", "gender", "causeofdeath", "deathdate", "deathdate", "causeofdeath"), value_temp = c("BLANK", "MM/DD/YYYY", "BLANK", "F", "BLANK", "BLANK", "MM/DD/YYYY", "BLANK"))
E o seguinte arquivo de mapeamento que desejo usar eventualmente para produzir novos valores usando um left_join():
df_map <- data.frame(var_name_1 = c("causeofdeath", "causeofdeath", "dob"), val_1 = c("BLANK", "BLANK", "MM/DD/YYYY"), var_name_2 = c("deathdate", "deathdate", "gender"), val_2 = c("MM/DD/YYYY", "BLANK", "F"), new_var_name = c("ida", "idf", "ids"), new_val = c("T60", "T55", "T67"))
Como posso remodelar df_melted para que fique no mesmo arranjo específico mostrado em df_map sem fazer nenhuma suposição sobre a ordem do dataframe?, ou seja:
Eu tentei usar pivot_wider() sem sucesso
Você pode tentar
pivot_wider
depois de adicionar algumas colunas auxiliares, por exemplo,p
egrp
e você obterá