Paquetes
library(lubridate)
##
## Attaching package: 'lubridate'
## The following objects are masked from 'package:base':
##
## date, intersect, setdiff, union
library(kableExtra)
library(lubridate)
library(circular)
##
## Attaching package: 'circular'
## The following objects are masked from 'package:stats':
##
## sd, var
library(dplyr)
##
## Attaching package: 'dplyr'
## The following object is masked from 'package:kableExtra':
##
## group_rows
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(pander)
library(ggplot2)
sis<-read.csv(file = "C:\\Users\\permi\\Desktop\\CIDE\\Primer semestre\\R\\sismos.csv")
head(sis)
En este caso se usa la función as.Date para identificar el formato de la columna de la base de datos donde esta la fecha. Lubridate nos apoya para el manejo de dichas fechas y especificamente de los meses con la función month
sismosx_mes<-count(sis,Mes=month(sis$Fecha, label = TRUE))
colnames(sismosx_mes)<-c("Mes","Cantidad de sismos")
kable(sismosx_mes, caption = "Cantidad de sismos ocurridos por mes")
| Mes | Cantidad de sismos |
|---|---|
| ene | 21195 |
| feb | 20644 |
| mar | 19155 |
| abr | 17959 |
| may | 17807 |
| jun | 18129 |
| jul | 17633 |
| ago | 17827 |
| sep | 21497 |
| oct | 18254 |
| nov | 18094 |
| dic | 18570 |
En este caso use Regex y busqué especificamente en la columnda donde se aborda la localización del sismo. Para cada estado busque su nombre como se abrevia en la base de datos, esto lo hice con la funcion grep. Posterior a ello a cada uno de los estados apliqué la función length para saber cuántas veces aparece en la base de datos.
AGUASCALIENTES<-length(grep(".*(AGS).*", sis$Referencia.de.localizacion))
BAJA_CALIFORNIA<-length(grep(".*(BC).*", sis$Referencia.de.localizacion))
BAJA_CALIFORNIA_SUR<-length(grep(".*(BCS).*", sis$Referencia.de.localizacion))
CAMPECHE<-length(grep(".*(, CAMP).*", sis$Referencia.de.localizacion))
CHIAPAS<-length(grep(".*(, CHIS).*", sis$Referencia.de.localizacion))
CHIHUAHUA<-length(grep(".*(, CHIH).*", sis$Referencia.de.localizacion))
CDMX<-length(grep(".*(, CDMX).*", sis$Referencia.de.localizacion))
COAHUILA<-length(grep(".*(, COAH).*", sis$Referencia.de.localizacion))
COLIMA<-length(grep(".*(, COL).*", sis$Referencia.de.localizacion))
DURANGO<-length(grep(".*(, DGO).*", sis$Referencia.de.localizacion))
EDO_MEX<-length(grep(".*(, MEX).*", sis$Referencia.de.localizacion))
GUANAJUATO<-length(grep(".*(, GTO).*", sis$Referencia.de.localizacion))
GUERRERO<-length(grep(".*(, GRO).*", sis$Referencia.de.localizacion))
MICHOACAN<-length(grep(".*(MICH).*", sis$Referencia.de.localizacion))
HIDALGO<-length(grep(".*(, HGO).*", sis$Referencia.de.localizacion))
JALISCO<-length(grep(".*(, JAL).*", sis$Referencia.de.localizacion))
MICHOACAN<-length(grep(".*(, MICH).*", sis$Referencia.de.localizacion))
MORELOS<-length(grep(".*(, MOR).*", sis$Referencia.de.localizacion))
NAYARIT<-length(grep(".*(, NAY).*", sis$Referencia.de.localizacion))
NUEVO_LEON<-length(grep(".*(, NL).*", sis$Referencia.de.localizacion))
OAXACA<-length(grep(".*(, OAX).*", sis$Referencia.de.localizacion))
PUEBLA<-length(grep(".*(, PUE).*", sis$Referencia.de.localizacion))
QUERETARO<-length(grep(".*(, QRO).*", sis$Referencia.de.localizacion))
QUINTANA_ROO<-length(grep(".*(, QR).*", sis$Referencia.de.localizacion))
SAN_LUIS_POTOSI<-length(grep(".*(, SLP).*", sis$Referencia.de.localizacion))
SINALOA<-length(grep(".*(, SIN).*", sis$Referencia.de.localizacion))
SONORA<-length(grep(".*(, SON).*", sis$Referencia.de.localizacion))
TABASCO<-length(grep(".*(, TAB).*", sis$Referencia.de.localizacion))
TAMAULIPAS<-length(grep(".*(, TAMS).*", sis$Referencia.de.localizacion))
TLAXCALA<-length(grep(".*(, TLAX).*", sis$Referencia.de.localizacion))
VERACRUZ<-length(grep(".*(, VER).*", sis$Referencia.de.localizacion))
YUCATAN<-length(grep(".*(, YUC).*", sis$Referencia.de.localizacion))
ZACATECAS<-length(grep(".*(, ZAC).*", sis$Referencia.de.localizacion))
Estados<-c("Aguascalientes","Baja California","Baja California Sur","Campeche","Chiapas","Chihuahua","CDMX","Coahuila","Colima","Durango","Guanajuato","Guerrero","Hidalgo","Jalisco","Edo de Mexico","Michoacan","Morelos","Nayarit","Nuevo Leon","Oaxaca","Puebla","Queretaro","Quintana Roo","San Luis Potosi","Sinaloa","Sonora","Tabasco","Tamaulipas","Tlaxcala","Veracruz","Yucatan","Zacatecas")
Total_de_sismos2<-c(42,11016,2846,62,42913,400,285,109,5288,61,583,82,39249,13979,548,6832,13979,233,263,420,94592,1130,15,101,189,920,1309,530,115,120,5159,228)
Sismos_por_estado<-data.frame(Estados,Total_de_sismos2)
pandoc.table(Sismos_por_estado)
##
## ----------------------------------------
## Estados Total_de_sismos2
## --------------------- ------------------
## Aguascalientes 42
##
## Baja California 11016
##
## Baja California Sur 2846
##
## Campeche 62
##
## Chiapas 42913
##
## Chihuahua 400
##
## CDMX 285
##
## Coahuila 109
##
## Colima 5288
##
## Durango 61
##
## Guanajuato 583
##
## Guerrero 82
##
## Hidalgo 39249
##
## Jalisco 13979
##
## Edo de Mexico 548
##
## Michoacan 6832
##
## Morelos 13979
##
## Nayarit 233
##
## Nuevo Leon 263
##
## Oaxaca 420
##
## Puebla 94592
##
## Queretaro 1130
##
## Quintana Roo 15
##
## San Luis Potosi 101
##
## Sinaloa 189
##
## Sonora 920
##
## Tabasco 1309
##
## Tamaulipas 530
##
## Tlaxcala 115
##
## Veracruz 120
##
## Yucatan 5159
##
## Zacatecas 228
## ----------------------------------------
sis$Hora<-strptime(sis$Hora, format = "%H:%M:%S")
sis$conteo<-1
sis$hora_delsis<-hour(sis$Hora)
hora<-aggregate(conteo~hora_delsis,
sis,
sum)
hora %>%
ggplot(
aes(
x=hora_delsis,
y=conteo
)
) +
theme_bw() +
theme(text = element_text(size=15),
plot.title = element_text(hjust = 0.5),
)+
geom_bar(stat = "identity",
color="red",
fill="cornflowerblue",
position = position_dodge()
)+
coord_polar()+
scale_x_continuous(breaks = c(0:23),
labels = as.character(c(0:23))) +
labs(title = "Sismos por hora",
subtitle = "Sismos registrados",
x = "Hora de ocurrencia",
y = "Frecuencia",
caption = "CIDE es lo mejor")
sis_5<-sis[sis$Magnitud >= "5",]
sis_mayor_cinco<-sis_5[sis_5$Magnitud != "no calculable",]
AGUASCALIENTES<-length(grep(".*(AGS).*", sis_mayor_cinco$Referencia.de.localizacion))
BAJA_CALIFORNIA<-length(grep(".*(BC).*", sis_mayor_cinco$Referencia.de.localizacion))
BAJA_CALIFORNIA_SUR<-length(grep(".*(BCS).*", sis_mayor_cinco$Referencia.de.localizacion))
CAMPECHE<-length(grep(".*(, CAMP).*", sis_mayor_cinco$Referencia.de.localizacion))
CHIAPAS<-length(grep(".*(, CHIS).*", sis_mayor_cinco$Referencia.de.localizacion))
CHIHUAHUA<-length(grep(".*(, CHIH).*", sis_mayor_cinco$Referencia.de.localizacion))
CDMX<-length(grep(".*(, CDMX).*", sis_mayor_cinco$Referencia.de.localizacion))
COAHUILA<-length(grep(".*(, COAH).*", sis_mayor_cinco$Referencia.de.localizacion))
COLIMA<-length(grep(".*(, COL).*", sis_mayor_cinco$Referencia.de.localizacion))
DURANGO<-length(grep(".*(, DGO).*", sis_mayor_cinco$Referencia.de.localizacion))
EDO_MEX<-length(grep(".*(, MEX).*", sis_mayor_cinco$Referencia.de.localizacion))
GUANAJUATO<-length(grep(".*(, GTO).*", sis_mayor_cinco$Referencia.de.localizacion))
GUERRERO<-length(grep(".*(, GRO).*", sis_mayor_cinco$Referencia.de.localizacion))
MICHOACAN<-length(grep(".*(MICH).*", sis_mayor_cinco$Referencia.de.localizacion))
HIDALGO<-length(grep(".*(, HGO).*", sis_mayor_cinco$Referencia.de.localizacion))
JALISCO<-length(grep(".*(, JAL).*", sis_mayor_cinco$Referencia.de.localizacion))
MICHOACAN<-length(grep(".*(, MICH).*", sis_mayor_cinco$Referencia.de.localizacion))
MORELOS<-length(grep(".*(, MOR).*", sis_mayor_cinco$Referencia.de.localizacion))
NAYARIT<-length(grep(".*(, NAY).*", sis_mayor_cinco$Referencia.de.localizacion))
NUEVO_LEON<-length(grep(".*(, NL).*", sis_mayor_cinco$Referencia.de.localizacion))
OAXACA<-length(grep(".*(, OAX).*", sis_mayor_cinco$Referencia.de.localizacion))
PUEBLA<-length(grep(".*(, PUE).*", sis_mayor_cinco$Referencia.de.localizacion))
QUERETARO<-length(grep(".*(, QRO).*", sis_mayor_cinco$Referencia.de.localizacion))
QUINTANA_ROO<-length(grep(".*(, QR).*", sis_mayor_cinco$Referencia.de.localizacion))
SAN_LUIS_POTOSI<-length(grep(".*(, SLP).*", sis_mayor_cinco$Referencia.de.localizacion))
SINALOA<-length(grep(".*(, SIN).*", sis_mayor_cinco$Referencia.de.localizacion))
SONORA<-length(grep(".*(, SON).*", sis_mayor_cinco$Referencia.de.localizacion))
TABASCO<-length(grep(".*(, TAB).*", sis_mayor_cinco$Referencia.de.localizacion))
TAMAULIPAS<-length(grep(".*(, TAMS).*", sis_mayor_cinco$Referencia.de.localizacion))
TLAXCALA<-length(grep(".*(, TLAX).*", sis_mayor_cinco$Referencia.de.localizacion))
VERACRUZ<-length(grep(".*(, VER).*", sis_mayor_cinco$Referencia.de.localizacion))
YUCATAN<-length(grep(".*(, YUC).*", sis_mayor_cinco$Referencia.de.localizacion))
ZACATECAS<-length(grep(".*(, ZAC).*", sis_mayor_cinco$Referencia.de.localizacion))
Los cinco estados con mayor cantidad de sismos con magnitud mayor o igual a 5 son:
Estados<-c("Chiapas","Oaxaca","Guerrero","Baja California Sur","Jalisco")
Total_de_sismos3<-c(499,272,185,115,105)
Top5<-data.frame(Estados,Total_de_sismos3)
pandoc.table(Top5)
##
## ----------------------------------------
## Estados Total_de_sismos3
## --------------------- ------------------
## Chiapas 499
##
## Oaxaca 272
##
## Guerrero 185
##
## Baja California Sur 115
##
## Jalisco 105
## ----------------------------------------
library(ggplot2)
chiapas<-read.csv(file = "C:\\Users\\permi\\Desktop\\CIDE\\Primer semestre\\R\\chiapas.csv")
chiapas2<-data.frame(chiapas)
chiapas3<-subset(chiapas2,Magnitud!="no calculabe")
chiapas4<-as.numeric(chiapas3$Magnitud)
## Warning: NAs introducidos por coerción
qplot(chiapas4, geom = "histogram", main="Magnitud de sismos en Chiapas", xlab ="Magnitud", ylab ="Cantidad", col=I("white"))
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## Warning: Removed 5202 rows containing non-finite values (stat_bin).
Calculando las derivadas parciales respecto a los parametros b, e igualando dicha derivada a 0, se obtiene el vector de estimaciones puntuales de los parametros \(\beta\) (o b):
Utilizando los datos disponibles en Moodle llamados corazon, obtener el vector de estimaciones puntuales para los parametros b cuando X = matriz de variables biking y smoking (498 x 2) y, y = hear.disease (498 x 1).
cora<-read.csv(file = "C:\\Users\\permi\\Desktop\\CIDE\\Primer semestre\\R\\corazon.csv")
x<-matrix(c(cora$biking,cora$smoking),ncol=2)
head(x)
## [,1] [,2]
## [1,] 30.801246 10.896608
## [2,] 65.129215 2.219563
## [3,] 1.959665 17.588331
## [4,] 44.800196 2.802559
## [5,] 69.428454 15.974505
## [6,] 54.403626 29.333176
y<-c(cora$heart.disease)
x_t<-t(x)
xtrns_x<-x_t%*%x
Ide<-diag(1,nrow = 2)
xtrans_xide<-solve(xtrns_x,Ide)
xt_y<-x_t%*%cora$heart.disease
b<-xtrans_xide%*%xt_y
b
## [,1]
## [1,] -0.03827376
## [2,] 0.62303710
Por lo que nuestra ecuación de regresion lineal es:
\[y=-0.03827376X_{1}+0.6230371X_{2}\]
\(X_{1}=biking\) \(X_{2}=smoking\)