Luis Jimenez 11002191
graf <- ggplot(bikeData, aes(atemp,hum)) + geom_point()
graf + facet_grid(. ~ season, scales="fixed")
springData <- bikeData %>%
dplyr::select(season, atemp, hum, cnt) %>%
filter(season == 1)
summerData <- bikeData %>%
dplyr::select(season, atemp, hum, cnt) %>%
filter(season == 2)
autumnData <- bikeData %>%
dplyr::select(season, atemp, hum, cnt) %>%
filter(season == 3)
winterData <- bikeData %>%
dplyr::select(season, atemp, hum, cnt) %>%
filter(season == 4)
springDensity <- kde2d(springData$atemp, springData$hum, n=100)
springDensity$z <- springDensity$z/sum(springDensity$z)
#sum(springDensity$z)
summerDensity <- kde2d(summerData$atemp, summerData$hum, n=100)
summerDensity$z <- summerDensity$z/sum(summerDensity$z)
#sum(summerDensity$z)
autumnDensity <- kde2d(autumnData$atemp, autumnData$hum, n=100)
autumnDensity$z <- autumnDensity$z/sum(autumnDensity$z)
#sum(autumnDensity$z)
winterDensity <- kde2d(winterData$atemp, winterData$hum, n=100)
winterDensity$z <- winterDensity$z/sum(winterDensity$z)
#sum(winterDensity$z)
cols<-colorRampPalette(c("black","blue","green","orange","red"))(1000)
spring:
image(springDensity$z,
col = cols,
zlim=c(min(springDensity$z), max(springDensity$z)))
summer:
image(summerDensity$z,
col = cols,
zlim=c(min(summerDensity$z), max(summerDensity$z)))
autumn
image(autumnDensity$z,
col = cols,
zlim=c(min(autumnDensity$z), max(autumnDensity$z)))
winter:
image(winterDensity$z,
col = cols,
zlim=c(min(winterDensity$z), max(winterDensity$z)))
x0 <- 0
y0 <- 0
r <- 1
bikeDensity <- kde2d(bikeData$atemp,bikeData$hum, n=100)
bikeDensity$z <- bikeDensity$z / sum(bikeDensity$z)
x_c <- bikeDensity$x >= x0 - sqrt( r**2 - (bikeDensity$y - y0)**2 ) & bikeDensity$x <= x0 + sqrt( r**2 - (bikeDensity$y - y0)**2 )
y_c <- bikeDensity$y >= y0 - sqrt( r**2 - (bikeDensity$x - x0)**2 ) & bikeDensity$y <= y0 + sqrt( r**2 - (bikeDensity$x - x0)**2 )
sum( bikeDensity$z[x_c, y_c] )
## [1] 0.567792
# ver el valor de z de algun punto, elegi 0.45,0.60 que aparece en color verde en el heatmap de ejemplo
somePoint <- bikeDensity$z[45,60]
# elegimos los que tienen aproximadamente el mismo valor
# usamos la variable precision para determinar que tanto puede variar, y aun considerarse parte de la isocuanta
precision <- 0.0001
z_f <- bikeDensity$z >= somePoint-precision & bikeDensity$z <= somePoint+precision
# usamos z_f, nuestro filtro, y sumamos
sum(bikeDensity$z[z_f])
## [1] 0.6062341