Buenas, quiero calcular el valor máximo de determinados grupos de registros de una variable (df$z), indicando donde empieza y acaba cada grupo con otro dataframe (df1).
Estos serían como ejemplo los dos dataframes :
```{r}
df <- data.frame(tibble(
PK = 1:100,
z = PK^2)
)
df1 <- data.frame(tibble(
INI = seq(from = 10, to = 90, by = 10),
FIN = seq(from = 20, to = 100, by = 10)
))
```
La idea es ir filtrando en df$PK con los valores de df1 (INI y FIN) e ir calculando el máximo de la variable df$z para meter esos valores en un vector o dataframe:
obtener los valores máximos de df$z[i] en los diferentes intervalos (df1$INI[i] , df1$FIN[i])...
Mi intento fallido y mal hecho como principiante novato que soy es el siguiente:
```{r}
data <- vector("list", length(df))
for (i in seq_along(df1)){
df %>%
filter(PK > df1$INI[i], PK < df1$FIN[i]) %>%
summarise(z_max=max(z))
}
```
Podría alguien ayudarme a hacerlo bien?
Gracias de antemano
Javier