Foro de debate

series de tiempo

 
Imagen de camila molina
series de tiempo
de camila molina - viernes, 23 de agosto de 2019, 16:26
 

Hola!

estoy trabajando con una base de datos de tiendas. En una columna tengo un id unico de tienda, que se repite porque tengo muchas filas con informacion para esa tienda, aprox 12 x 4 ( 12 meses por 4 años).

Mis columnas son

Codigo, ventas, fecha

ej. 101   4.000  01-02-2016

    101  4 4.500 01-03-2016

asi hasta 2019 por ejemplo.

Cabe destacar que no esta ordenado ( informacion de toooda una tienda luego otra y asi..)

Quiero hacer una serie de tiempo para cada codigo.

que me sugieren?

Yo parti tomando unique a la variable codigo y cree un for que recorre esa variable unificada y que me de el valor de la venta asociada pero me tira error.

Eso! espero pudan ayudarme! si alguien con tiempo podemos conversar por otro medio

dese ya muchas gracias


Imagen de M S
Re: series de tiempo
de M S - viernes, 23 de agosto de 2019, 17:15
Imagen de camila molina
Re: series de tiempo
de camila molina - viernes, 23 de agosto de 2019, 22:40
 
tengo codigo,ventas y fecha. 

Para cada ID hay 12x4 filas con el mismo id pero distinto valor en la celda fecha y venta.

Quiero hacer una serie de tiempo para cada id.

Tengo algo mas o menos asi


Id venta fecha

1101   $4.000    01-02-15

1101   $4.500    01-03-15

.....

1101  $5.000    01-12-15

1102  $2.000    01-01-16

espero se entienda, tambien te hablo por interno!! ojala puedas ayudarme!!!!

Imagen de Manuel Muñoz Márquez
Re: series de tiempo
de Manuel Muñoz Márquez - sábado, 24 de agosto de 2019, 11:22
 

Buenas:

Si tienes un data.frame d con las columnas Id, venta, fecha y quieres quedarte con las filas con un id, por ejemplo, 1101, basta con que hagas

d1101 <- d[d$Id == 1101]

Un saludo.

Imagen de camila molina
Re: series de tiempo
de camila molina - miércoles, 28 de agosto de 2019, 17:04
 

muchas gracias! y si quiero dos condiciones, como seria?

ej tomar todas las filas con ID=1101 y local= santiago


Te leo!

Imagen de Manuel Muñoz Márquez
Re: series de tiempo
de Manuel Muñoz Márquez - jueves, 29 de agosto de 2019, 09:41
 

Buenas:

Pues sería

d1101santiago <- d[d$Id == 1101 & d$local == "Santiago"]
Atención: El & es sencillo para que el resultado sea un vector.

Saludos.

Imagen de M S
Re: series de tiempo
de M S - sábado, 24 de agosto de 2019, 14:01
 

Camila:

Sigo sin tener muy claro qué busca. No obstante, dándole vueltas puede que estas líneas le sean de utilidad. En lugar de aplicar una función time.series con la que no estoy familiarizado por razones de práctica diaria, sí le muestro un ejemplo con la función de regresión lm. Imagino que como punto de inicio nos puede ayudar, y posteriormente adaptarse al caso que busca. No sé realmente qué función y salida persigue.

El código de abajo le ejecuta fácilmente una función de regresión lineal en cada agrupación predefinida, en este caso según id.producto (10 tipos de productos diferentes, del 1 al 10).

#-----------------------------------------------------------------------#

prueba <- data.frame(

  id=seq(1,1000),

  id.product=sample(1:10,1000, replace=TRUE),

  Y=sample(1000000:5000000,1000, replace=TRUE),

  X=sample(1000:1200,1000, replace=TRUE),

  fecha=sample(seq(as.Date('2019/01/01'), as.Date('2019/03/28'), by="day"), 1000, replace=TRUE)

)

library(dplyr)

prueba.reg<-prueba %>%

  group_by(id.product) %>%

  group_map(~ broom::tidy(lm(Y ~ X, data = .x))) %>%

  print()

#-----------------------------------------------------------------------#