con = dbConnect(SQLite(), dbname="~/Invest/Transmission 2/siacon.db")
dbListTables(con)
##  [1] "agro_cierre_estatal"   "agro_cierre_municipal"
##  [3] "cat_ciclo"             "cat_clasificacion"    
##  [5] "cat_cultivo"           "cat_especie"          
##  [7] "cat_especiepesquero"   "cat_estado"           
##  [9] "cat_generico"          "cat_gruponatural"     
## [11] "cat_litoral"           "cat_modalidad"        
## [13] "cat_municipio"         "cat_producto"         
## [15] "cat_tipo_produccion"   "cat_tipoagricultura"  
## [17] "cat_unidadmedida"      "cat_variedad"         
## [19] "cultivo_generico"      "peco_cierre_estatal"  
## [21] "peco_cierre_municipal" "pes_catalogo"         
## [23] "pes_elemento"          "peso_cierre_estatal"
dbGetQuery(con, "SELECT * FROM peco_cierre_municipal AS peco
           LEFT JOIN cat_especie ON peco.idespecie = cat_especie.idespecie
           LEFT JOIN cat_clasificacion ON peco.idclasificacion = cat_clasificacion.idclasificacion
           LEFT JOIN cat_producto ON peco.idproducto = cat_producto.idproducto
           WHERE nomespecie IN ('Bovino','Porcino','Ovino','Caprino')") %>%
  select(-contains("idclasificacion"), -contains("idespecie"), -contains("idproducto")) -> table.ganado
head(table.ganado)
##   anio idestado idddr idcader idmunicipio pesopie pesocanal preciopie
## 1 2014        1     1       1           1 447.911   237.539     26.89
## 2 2014        1     1       1           1   0.000     0.000      0.00
## 3 2014        1     1       1           1  38.520    20.116     27.72
## 4 2014        1     1       1           1  44.378    23.263     29.56
## 5 2014        1     1       1           1 110.324    80.106     28.28
## 6 2014        1     1       1           5 430.961   229.524     26.36
##   preciocanal  valorpie valorcanal volumenpie volumencanal inventario
## 1       53.23 288272.62  302640.71  10719.842     5685.010          0
## 2        5.77      0.00  522568.35      0.000    90614.099          0
## 3       51.30   3122.16    3017.47    112.632       58.820          0
## 4       56.56  10739.83   10772.14    363.323      190.455          0
## 5       41.08  23739.64   25033.64    839.344      609.450          0
## 6       53.01 203656.00  218104.30   7725.839     4114.680          0
##   numerocabezas nomespecie ordenreporte nomclasificacion orden
## 1             0     Bovino           10            Carne    20
## 2             0     Bovino           10            Leche    10
## 3          2924    Caprino           40            Carne    20
## 4          8187      Ovino           30            Carne    20
## 5          7608    Porcino           20            Carne    20
## 6             0     Bovino           10            Carne    20
##   idunidadmedida nomproducto
## 1         200201       Carne
## 2         200204       Leche
## 3         200201       Carne
## 4         200201       Carne
## 5         200201       Carne
## 6         200201       Carne
table.ganado %>%
  group_by(nomespecie, nomclasificacion, nomproducto) %>%
  summarise(count = n()) 
## # A tibble: 7 x 4
## # Groups:   nomespecie, nomclasificacion [7]
##   nomespecie nomclasificacion nomproducto count
##   <chr>      <chr>            <chr>       <int>
## 1 Bovino     Carne            Carne       25889
## 2 Bovino     Leche            Leche       22940
## 3 Caprino    Carne            Carne       18945
## 4 Caprino    Leche            Leche        7104
## 5 Ovino      Carne            Carne       23799
## 6 Ovino      Otros productos  Lana         7095
## 7 Porcino    Carne            Carne       25232
dbGetQuery(con, "SELECT * FROM agro_cierre_municipal AS agro
           LEFT JOIN cat_variedad ON agro.idvariedad = cat_variedad.idvariedad
           LEFT JOIN cat_cultivo AS cat ON agro.idcultivo = cat.idcultivo
           WHERE cat.idcultivo IN (SELECT idcultivo FROM cat_variedad
           WHERE idgrupo = (SELECT idgrupo FROM cat_gruponatural
           WHERE nomgrupo LIKE '%legumbre%'))") %>%
  select(-contains("idcultivo"), -contains("idvariedad"), -contains("idunidadmedida..")) %>% 
  select(-variedad, -cultivo, -idgrupo) -> table.cultivos
head(table.cultivos)
##   anio idestado idddr idcader idmunicipio idciclo idmodalidad
## 1 2016        1     1       1           1       2           2
## 2 2016        1     1       1           5       2           1
## 3 2016        1     1       1           5       2           2
## 4 2016        1     1       1          10       2           1
## 5 2016        1     1       1          10       2           2
## 6 2016        1     1       1          11       2           1
##   idunidadmedida idtipoagricultura idtipoproduccion sembrada cosechada
## 1         200201              3004         10010102      874       874
## 2         200201              3004         10010102       14        14
## 3         200201              3004         10010102      137       137
## 4         200201              3004         10010102       10        10
## 5         200201              3004         10010102     2457      2457
## 6         200201              3004         10010102        2         2
##   siniestrada volumenproduccion valorproduccion rendimiento
## 1           0            344.40       1712739.1       0.394
## 2           0             31.40        157000.0       2.243
## 3           0             61.27        283100.5       0.447
## 4           0             22.00        121000.0       2.200
## 5           0            864.53       4557084.6       0.352
## 6           0              4.80         24000.0       2.400
##   preciomediorural         nomvariedad nomcultivo
## 1          4973.11 Frijol flor de mayo     Frijol
## 2          5000.00 Frijol flor de mayo     Frijol
## 3          4620.54 Frijol flor de mayo     Frijol
## 4          5500.00 Frijol flor de mayo     Frijol
## 5          5271.17 Frijol flor de mayo     Frijol
## 6          5000.00 Frijol flor de mayo     Frijol
table.cultivos %>%
  group_by(nomcultivo) %>%
  summarise(count = n()) 
## # A tibble: 6 x 2
##   nomcultivo        count
##   <chr>             <int>
## 1 Arvejón             835
## 2 Frijol            52866
## 3 Garbanzo grano     3471
## 4 Garbanzo porquero   414
## 5 Haba grano         2689
## 6 Lenteja             269
table.cultivos %>%
  group_by(anio, idestado, nomcultivo) %>%
  summarise(sembrada_mean = mean(sembrada), count_sem = n()) %>%
ggplot() + 
  geom_boxplot(aes(x=nomcultivo, y=sembrada_mean)) +
  coord_flip()

dbDisconnect(con)