es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Crear contenedores no superpuestos en R

Tengo un conjunto de datos x,y (10,000). Estos puntos de datos deben ser divididos a lo largo del eje x en compartimentos no superpuestos de 10 puntos de datos cada uno. A partir de esto, necesito un nuevo conjunto de datos, tal que x = media de estos 10 datos, y = máximo de estos 10 datos. El conjunto de datos final debe constar de 1000 conjuntos de x,y. sample

sample in Excel. Quiero realizar esta tarea en R.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Solución en R

    Primero, leeremos los datos utilizando read.csv(), asumiendo que los datos están almacenados en un archivo CSV.

    data <- read.csv("tuarchivodedatos.csv")
    

    A continuación, particionaremos los datos a lo largo del eje x en intervalos no superpuestos de 10 puntos de datos cada uno utilizando las funciones cut() y seq().

    cuts <- cut(data$x, breaks = seq(min(data$x), max(data$x) + 10, by = 10), right = FALSE, include.lowest = TRUE)
    

    Ahora creemos nuestro nuevo conjunto de datos según los requisitos de la pregunta:

    library(dplyr)
    
    newdata <- data %>%
      group_by(cuts) %>%
      summarize(x = mean(x),
                y = max(y))
    

    Esto nos debería proporcionar el conjunto de datos final con 1000 conjuntos de x,y. Luego podemos guardar estos datos en un archivo utilizando write.csv().

    write.csv(newdata, "nuevoarchivodedatos.csv", row.names = FALSE)
    

    ¡Y eso es todo! Hemos particionado los datos exitosamente y creado un nuevo conjunto de datos con medias y valores máximos.

Comments are closed.