I have 40 different data frames with no systems in there names, like: nat69eqte, nahi_il and nahc_cpwtre. I want to create a function/macro in R which can proceed the following code in a easy way for all the data frames:
nat69eqte_wide <- spread(nat69eqte, key = time, value = values)
attr(nat69eqte_wide, "Symname") <- "nat69eqte"
lst_nat69eqte_wide <- wgdx.reshape(nat69eqte_wide, 2)
CodePudding user response:
Without any knowledge of your data, I can try to guess:
the following function assumes that in each data.frame there are the columns time and values to be passed to spread. If it is not the case you can add these columns as arguments of the function.
NB spread is now deprecated, instead, use pivot_wider
myfun <- function(df){
name <- as_label(enquo(df))
df_wide <- spread(df, key = time, value = values)
attr(df_wide, "Symname") <- name
lst_df_wide <- wgdx.reshape(df_wide, 2)
return(lst_df_wide )
}
