lunes, 30 de septiembre de 2013

R y googleVis

Usando googleVis

Usando googleVis

El paquete googlesVis es una interface entre R y los gráficos de Google. En este post haremos algunos ejemplos sobre cómo emplear este paquete, creando un gráfico de movimiento con data real, obtenida del Banco Central de Venezuela, sobre la variación en los agregados monetarios entre 1992 y 2006. Vamos a usar el paquete xlsx que nos permite leer hojas de cálculos de Excel

# obtenemos el paquete
require(xlsx)
# indicamos la localizacion del archivo
libro <- "~/Downloads/1_6_1.xls"
ibro <- (ibro, sheetNames="liquidez")

Obtenemos ahora el paquete googleVis:

require(googleVis)

Antes de elaborar la gráfica tenemos que formatear la data de la forma como la requiere el tipo de visualización que deseamos elaborar:

require(reshape)
liquidezMelt <- melt(liquidez, id = "fecha")

Creamos la gráfica:

m <- gvisMotionChart(liquidezMelt, idvar = "variable", timevar = "fecha", options = list(width = 550, 
    height = 450))
print(m, "chart")

Desde R si escribimos plot(m) obtendremos una visualización en el navegador. Este gráfico puede ser manipulado por el usuario de forma tal que la visualización sea más amigable. Por ejemplo, puede cambiar el tipo de eje, los colore de las burbujas (de acuerdo con los valores de la variable, por ejemplo. En síntesis, este paquete es realmente extraordinario

sábado, 28 de septiembre de 2013

Venezuela. Reservas Internacionales del BCV, 1997-2012 (millones de US. dólares)

Las reservas internacionales de Venezuela siguen una tendencia creciente desde principios del año 2000 y hasta el 2008. En el 2009 las reservas inician un proceso de decrecimiento marcado por fuertes fluctuaciones.

Si sigue la linea de tendencia del gráfico con el mouse podrá observar la tasa de variación correspondiente al periodo seguido. Igualmente, si amplia o disminuye el zoom podrá obtener la evolución diaria, semanal, mensual, trimestral y anual, y observar la tendencia para cada lapso, desplazando la barra del eje x:

Fuente: BCV

viernes, 27 de septiembre de 2013

Más sobre extracción de información en R

Pre-procesamiento de datos. Indezación

Pre-procesamiento de datos.
Indezación

De manera general R guarda los datos en lo que se denomina data frame, algo similar a una matriz de datos para las personas acostumbradas a usar SPSS o a una hoja de cálculo para las personas acostumbradas a trabajar con, por ejemplo, Excel. En la etapa de pre-procesamiento de datos, o incluso durante el análisis o modelado de datos, posiblemente necesitemos trabajar con parte de la data. En ese caso debemos emplear algunos procedimientos para obtenerla. En este post elaboraremos algunos ejemplos sobre cómo extraer información de un data frame, si bien es posible seguir el mismo procedimiento para extraer información de otros objetos de R tales como matrices, vectores, listas y arrays.

En una data frame las observaciones, esto es los casos, están en las filas y las variables en las columnas:

cancer[1:10, 3:7]
##    cervical colon.recto esofago higado leucemia
## 1       2.6         6.5     9.7    3.8      5.3
## 2       1.5         7.1     2.4    6.7      5.7
## 3       3.4         8.5     0.5    1.3      2.9
## 4       0.8        14.3     2.5    4.9      3.8
## 5      12.5         3.5     4.0    9.6      1.8
## 6       5.4        13.6     4.6    5.2      4.0
## 7       0.0         5.1     1.9    3.6      2.8
## 8       5.2        17.1     4.8    4.1      4.4
## 9       5.5        12.7     1.4   11.7      5.0
## 10      1.0        13.0     3.9    3.4      5.1

Las variables en R pueden ser numéricas, cualitativas o boleanas. Las variables numéricas tienen dos clases: integer para cantidades discretas, y double para las cantidades continuas. Los factores corresponden a variables cualitativas que contienen categorías; los caracteres, a cadenas de textos, se trate de una sola letra o de un conjunto de ellas. Finalmente las variables boleanas toman valores lógicos. Veamos que variables, y de qué tipo hay, en el data frame anterior:

table(sapply(cancer[1, ], class))
## 
##  factor numeric 
##       4      11

Los nombres de las variables de un data frame pueden obtenerse bien mediante la función name() o bien mediante colname() . con estas mismas funciones se puede cambiar el nombre de las variables o modificar su presentación. Las filas generalmente se enumeran en los data frames.Por consiguiente, cuando se escribe rownames()se obtiene esta numeración. En ocasiones es conveniente sustituir estos números con nombres que tengan sentido.

names(cancer[1:10, 3:7])
## [1] "cervical"    "colon.recto" "esofago"     "higado"      "leucemia"
colnames(cancer[1:10, 3:7])
## [1] "cervical"    "colon.recto" "esofago"     "higado"      "leucemia"
rownames(cancer[1:10, 3:7])
##  [1] "1"  "2"  "3"  "4"  "5"  "6"  "7"  "8"  "9"  "10"

Cuando analizamos una base de datos, no siempre deseamos trabajar sobre toda la base. En esos casos debemos extraer muestras o, si sólo nos interesa una parte, subconjunto de datos.

subconjuntos y muestras

Indezación directa

De la data de cancer, por ejemplo, nos puede interesar obtener sólo las variables numéricas para generar una gráfica de caja y bigotes. La base posee 191 casos y 15 variables. En los ejemplos anteriores hemos obtenido un subconjunto de datos de la base de datos sobre cáncer. Hemos pedidos los diez primeros casos cancer[1:10,] y sólo de la tercera hasta la séptima variable cancer[,3:7]. La extracción del subconjunto que satisface esta condición se logra, entonces, aplicando cancer[1:10,3:7]. La condición deseada se coloca entre corchetes, y que la primera sentencia dentro de los corchetes, esto es, la operación para extraer las filas, es la primera que se establece. Después escribimos las condiciones para extraer las columnas. Si nos interesan todos los casos, pero sólo algunas variables, no escribimos nada del lado de las fila:


boxplot(cancer[, 3:13], las = 2, border = paleta)
grid()

plot of chunk tiposCancer

En el gráfico anterior, estamos solicitando que se elaboren las cajas y bigote para las variables 3 a la 13 con información para todos los casos. La forma de extraer información funciona tanto si queremos formar una nueva base de datos o aplicar ad hoc algún procedimiento a ese subconjunto de datos, como por ejemplo elaborar una grafica. Si las variables o casos que deseamos no son consecutivos, podemos crear un subvector para obtenerlos. Supongamos que sólo nos interesa obtener información las regiones (variable 2) y sólo con la data correspondiente a leucemia (variable 7) y cancer de ovarios (variable 10) :

cancer[c(2, 7, 10)]

Nótese que la condición para extraer la data se escribe igual, entre corchetes, y, dentro de estos, se escribe el vector deseado. Observese igualmente que el vector va precedido de c(), el indicativo en el contexto de R de que estamos creando un vector. También podemos excluir elementos. Un código con el que se obtiene la misma informacion anterior, pero que definitivamente requiere escribir más es:

cancer[1:191, -c(1, 3:6, 8:9, 11:15)]

En R también es posible extraer información usando los nombres de las variables, en ese caso, el nombre de la variable debe ir precedido del nombre del data frame donde está ubicada la variables

cancer$ovario
# es equivalente a escribir cancer[,10] o cancer[,'ovario']

Por lo que es totalmente factible extraer información empleando el siguiente código:

cancer[, "ovario", "cervial", "leucemia"]

En este caso obtendremos tres variables, en el orden solicitado medida para todos los casos. El mismo procedimiento se puede seguir para extraer casos. Por ello la recomendación que haciamos inicialmente de darle a las filas nombres que tengan sentido y no quedarse con la enumeración que por defecto asigna R a cada uno de los casos. Cuando los data frame son considerablemente grandes, es mejor buscar y extraer casos por nombre que por número.

El proceso de extraer información siguiendo todo el procedimiento anterior se denomina indezación directa. En R también es posible extraer datos de un data frame empleando condiciones lógicas.

Indización por condición.

Este tipo de extracción emplea ampliamente los operadores lógicos de R para obtener la información deseada. Supongamos que deseamos saber de la bae de datos sobre cáncer qué casos pertenecen a la región “america”:

which(cancer$region == "america")
##  [1]   6   8  13  16  19  22  25  32  36  38  42  45  50  51  52  54  68
## [18]  69  72  73  74  84 109 123 132 133 134 143 144 162 164 175 183 184
## [35] 187

El operador == en R significa es igual a. Debe ser un signo de igual doble. La función which() puede emplearse también para obtener cual columna tiene cierto nombre y escoger o dejarla fuera de la selección:

which(colnames(cancer) == "ovario")
## [1] 10

Si por ejemplo nos interesa extraer solo los casos:

  • región “america”,
  • region “america” con tasas iguales o mayores a la mediana cancer de mama
cancer[cancer$region == "america", ]
##                 pais  region cervical colon.recto esofago higado leucemia
## 6   antigua and bar. america      5.4        13.6     4.6    5.2      4.0
## 8          argentina america      5.2        17.1     4.8    4.1      4.4
## 13           bahamas america      4.7        10.8     3.4    3.3      4.1
## 16          barbados america      6.0        19.8     3.8    4.4      4.1
## 19            belize america      8.1         5.5     2.4    9.7      3.5
## 22           bolivia america      9.3         4.3     0.9    5.1      3.7
## 25            brazil america      6.5         7.1     4.8    5.4      3.8
## 32            canada america      1.3        14.8     3.2    2.9      4.8
## 36             chile america      4.4         9.6     4.3    5.1      4.0
## 38          colombia america      6.0         7.2     2.4    5.6      4.0
## 42        costa rica america      3.8        11.3     1.6    5.2      5.7
## 45              cuba america      4.5        14.1     4.2    4.7      4.1
## 50          dominica america      9.9        10.8     3.7    3.8      4.9
## 51     dominican rep america      7.6         6.8     1.6    9.3      3.7
## 52           ecuador america      5.9         6.9     1.7   10.3      5.7
## 54       el salvador america     11.3         3.5     1.5    6.0      3.5
## 68           grenada america      4.6         6.4     7.9    6.5      2.0
## 69         guatemala america      8.9         3.7     1.7   17.7      3.1
## 72            guyana america     11.8         5.6     1.0    4.6      2.0
## 73             haiti america      6.7         7.1     2.3    7.9      1.9
## 74          honduras america     11.1         5.2     2.1   16.1      4.2
## 84           jamaica america     11.8         9.7     3.3    4.4      2.6
## 109           mexico america      5.0         5.3     1.3    6.4      4.1
## 123        nicaragua america     11.7         5.6     1.0   10.0      4.2
## 132           panama america      7.2         9.2     1.8    4.6      4.9
## 133         paraguay america      8.3         8.1     4.1    3.3      5.1
## 134             peru america      9.3         5.8     1.2    8.2      4.5
## 143      saint lucia america      7.3         6.2     2.7    4.0      4.5
## 144    saint vincent america      9.9         6.0     1.2    3.6      3.0
## 162        st. kitts america      1.8        15.1     0.0   10.2      5.2
## 164         suriname america      7.7         7.4     1.8    7.2      3.2
## 175    trinidad/tob. america      8.0        12.2     1.7    2.6      4.0
## 183    united states america      1.1        12.6     3.4    3.9      5.3
## 184          uruguay america      4.0        20.8     7.1    1.8      5.8
## 187        venezuela america      7.9         7.4     1.5    4.1      3.7
##     mama oral ovario pancreas pulmon vejiga gdpcapita      region.1
## 6   29.8  2.7    8.5      3.4    8.3    3.1    12.480     caribbean
## 8   24.8  2.3    2.6      8.8   21.8    3.2        11    suramerica
## 13  27.7  4.1    3.3      1.9    9.7    1.5     6.813     caribbean
## 16  25.4  3.8    2.1      5.0    6.1    0.8       706     caribbean
## 19  12.5  0.2    0.8      3.2   12.7    1.1    47.807     caribbean
## 22   8.4  1.0    2.3      2.9    6.5    1.0     2.374    suramerica
## 25  13.6  4.6    1.8      4.3   14.0    2.0    12.594    suramerica
## 32  20.2  2.3    3.1      6.6   33.7    3.1    50.565  norteamerica
## 36  12.3  1.3    1.9      5.4   14.2    2.3    14.395    suramerica
## 38  11.0  1.7    2.1      3.7   12.9    1.4     7.100    suramerica
## 42  17.6  2.7    1.8      4.2    6.9    1.9     8.676 centroamerica
## 45  18.2  4.5    1.7      5.4   33.8    3.7     6.106     caribbean
## 50  27.0  5.7    0.0      4.5   10.9    2.6     7.322     caribbean
## 51  13.3  4.3    0.7      3.4   12.1    0.6     5.512     caribbean
## 52  11.1  1.6    2.0      4.4    9.5    1.0     4.829    suramerica
## 54   7.0  1.6    1.6      2.9    6.2    0.7     3.702 centroamerica
## 68  23.3  4.3    2.6      7.7   13.2    1.8     7.868     caribbean
## 69   6.2  2.2    0.9      2.9    7.1    0.5     3.178 centroamerica
## 72  18.1  1.9    1.9      3.3    4.8    0.7     3.408    suramerica
## 73  12.1  1.4    1.4      3.8    8.0    1.2       665     caribbean
## 74   8.3  2.4    1.4      3.9    8.9    0.7     2.250 centroamerica
## 84  24.8  2.2    1.6      4.7   16.2    2.9     5.360     caribbean
## 109 11.3  1.2    2.0      4.6    8.6    1.4    10.063 centroamerica
## 123  9.5  1.4    1.7      3.7    6.9    0.7     1.243 centroamerica
## 132 13.0  1.7    1.9      4.4   12.0    1.1     2.112 centroamerica
## 133 19.0  3.3    1.6      4.4   15.3    1.1     3.485    suramerica
## 134 11.8  1.1    1.9      4.0    7.3    1.4     6.138    suramerica
## 143 14.6  5.2    2.7      3.8   10.0    2.6     7.124     caribbean
## 144 18.0  6.0    1.0      4.2    6.9    0.3     6.291     caribbean
## 162 36.1  4.7    1.6      8.7    5.4    3.2    15.154     caribbean
## 164 14.7  1.5    2.7      3.5   11.3    1.4     8.708    suramerica
## 175 22.1  2.4    4.3      5.9    9.6    1.4    16.272     caribbean
## 183 18.8  2.1    3.2      7.4   35.4    3.0    47.882  norteamerica
## 184 29.5  4.5    2.8      8.9   26.8    4.4    13.819    suramerica
## 187 15.3  1.9    2.0      3.8   15.2    1.6    10.731    suramerica
cancer[cancer$region == "america" & cancer$mama >= median(cancer$mama), ]
##                 pais  region cervical colon.recto esofago higado leucemia
## 6   antigua and bar. america      5.4        13.6     4.6    5.2      4.0
## 8          argentina america      5.2        17.1     4.8    4.1      4.4
## 13           bahamas america      4.7        10.8     3.4    3.3      4.1
## 16          barbados america      6.0        19.8     3.8    4.4      4.1
## 32            canada america      1.3        14.8     3.2    2.9      4.8
## 42        costa rica america      3.8        11.3     1.6    5.2      5.7
## 45              cuba america      4.5        14.1     4.2    4.7      4.1
## 50          dominica america      9.9        10.8     3.7    3.8      4.9
## 68           grenada america      4.6         6.4     7.9    6.5      2.0
## 72            guyana america     11.8         5.6     1.0    4.6      2.0
## 84           jamaica america     11.8         9.7     3.3    4.4      2.6
## 133         paraguay america      8.3         8.1     4.1    3.3      5.1
## 144    saint vincent america      9.9         6.0     1.2    3.6      3.0
## 162        st. kitts america      1.8        15.1     0.0   10.2      5.2
## 175    trinidad/tob. america      8.0        12.2     1.7    2.6      4.0
## 183    united states america      1.1        12.6     3.4    3.9      5.3
## 184          uruguay america      4.0        20.8     7.1    1.8      5.8
##     mama oral ovario pancreas pulmon vejiga gdpcapita      region.1
## 6   29.8  2.7    8.5      3.4    8.3    3.1    12.480     caribbean
## 8   24.8  2.3    2.6      8.8   21.8    3.2        11    suramerica
## 13  27.7  4.1    3.3      1.9    9.7    1.5     6.813     caribbean
## 16  25.4  3.8    2.1      5.0    6.1    0.8       706     caribbean
## 32  20.2  2.3    3.1      6.6   33.7    3.1    50.565  norteamerica
## 42  17.6  2.7    1.8      4.2    6.9    1.9     8.676 centroamerica
## 45  18.2  4.5    1.7      5.4   33.8    3.7     6.106     caribbean
## 50  27.0  5.7    0.0      4.5   10.9    2.6     7.322     caribbean
## 68  23.3  4.3    2.6      7.7   13.2    1.8     7.868     caribbean
## 72  18.1  1.9    1.9      3.3    4.8    0.7     3.408    suramerica
## 84  24.8  2.2    1.6      4.7   16.2    2.9     5.360     caribbean
## 133 19.0  3.3    1.6      4.4   15.3    1.1     3.485    suramerica
## 144 18.0  6.0    1.0      4.2    6.9    0.3     6.291     caribbean
## 162 36.1  4.7    1.6      8.7    5.4    3.2    15.154     caribbean
## 175 22.1  2.4    4.3      5.9    9.6    1.4    16.272     caribbean
## 183 18.8  2.1    3.2      7.4   35.4    3.0    47.882  norteamerica
## 184 29.5  4.5    2.8      8.9   26.8    4.4    13.819    suramerica

Los operadores lógicos en R son:

Operador Equivale a
== Igual a
!= Diferente a
> Mayor que
< Menor que
>= Mayor o igual que
<= Menor o igual que

jueves, 26 de septiembre de 2013

Tasas de cáncer. Análisis descriptivo usando R

Análisis descriptivo

Análisis descriptivo

Se nos ha pedido información sobre diferentes tipos de cáncer en el mundo en el año 2011 y establecer la situación de Venezuela.

Como de costumbre, empezamos subiendo la data a la cónsola de trabajo de R:

cancer <- read.csv("~/cancer.csv", header = T, sep = ";", na.string = "NA", 
    dec = ",")

Obtenemos información sobre las dimensiones de la data

dim(cancer)
## [1] 191  15
str(cancer)
## 'data.frame':    191 obs. of  15 variables:
##  $ pais       : Factor w/ 191 levels "afghanistan",..: 1 2 3 4 5 6 7 8 9 10 ...
##  $ region     : Factor w/ 6 levels "africa","america",..: 3 5 1 5 1 2 3 2 4 6 ...
##  $ cervical   : num  2.6 1.5 3.4 0.8 12.5 5.4 0 5.2 5.5 1 ...
##  $ colon.recto: num  6.5 7.1 8.5 14.3 3.5 13.6 5.1 17.1 12.7 13 ...
##  $ esofago    : num  9.7 2.4 0.5 2.5 4 4.6 1.9 4.8 1.4 3.9 ...
##  $ higado     : num  3.8 6.7 1.3 4.9 9.6 5.2 3.6 4.1 11.7 3.4 ...
##  $ leucemia   : num  5.3 5.7 2.9 3.8 1.8 4 2.8 4.4 5 5.1 ...
##  $ mama       : num  14.2 18.4 16.9 15.5 13 29.8 11 24.8 28 18.2 ...
##  $ oral       : num  2 4.6 3.5 2.9 3.6 2.7 2.1 2.3 2.6 2.2 ...
##  $ ovario     : num  1 1.6 1.7 1.9 1.8 8.5 1.5 2.6 3.1 2.5 ...
##  $ pancreas   : num  2.3 8.9 1.3 4.6 1.3 3.4 4 8.8 9.4 6.2 ...
##  $ pulmon     : num  7.2 31 10.6 21.6 2.3 8.3 7.4 21.8 39.3 23 ...
##  $ vejiga     : num  4.3 3.8 5 4.2 1.5 3.1 1.5 3.2 5.9 2.8 ...
##  $ gdpcapita  : Factor w/ 188 levels "1.098","1.114",..: 148 105 134 115 130 35 102 29 83 71 ...
##  $ region.1   : Factor w/ 13 levels "aao","africa sub",..: 11 7 11 7 2 5 11 13 7 4 ...

Hay 196 casos, es decir países, y 15 variables, cuatro de ellas cualitativas y el resto numéricas.

Una de las primeras preguntas que pudieramos formularnos es, con la data disponibles ¿Cuál es la distribución de los diferentes tipos de cáncer? Para responderlar nos planteamos una comparación de la distribución de los tipos de cáncer. Para ello elaboramos, por ejemplo, un gráfico de caja y bigotes:


boxplot(cancer[, 3:13], las = 2, border = paleta)
grid()

plot of chunk tiposCancer

Observamos que el cáncer de pulmón y el cáncer de mama son los más frecuentes tipos de cáncer. El primero presenta mayor número de casos, está más extendido, pero el cáncer de mama presente tasas más altas: las tasas mínimas del cáncer de pulmón son de 0.7 casos por cada 100 mil casos, en tanto que las del cáncer de mama es de 1.5 casos por cada 100 mil habitantes. El cancer de colon-recto es el tercer tipo de cáncer con mayores tasas, en el 75% de los casos, la tasa es de 13.15 casos por cada 100 mil habitantes. En el resto de los tipos de cáncer, en el 75% de los casos las tasas son inferiores a los 10 cada 100 mil habitantes o menos:

barplot(sort(sapply(cancer[, 3:13], quantile, probs = 0.75)), names.arg = c("ovario", 
    "vejiga", "oral", "leucemia", "esofago", "pancreas", "cervical", "higado", 
    "colon.recto", "mama", "pulmon"), border = "white", las = 2, ylim = c(0, 
    25))
grid(equilogs = FALSE)

plot of chunk setentaycico

Seguimos examinando el comportamiento de las tasas de los tipos de cáncer disponible por región y subregión:

boxplot(cancer$mama ~ cancer$region, las = 2, border = paleta, ylab = "tasas/100 mil habitantes", 
    main = "Incidencia de cáncer de mama según región, 2011")
grid()

plot of chunk mamaPulmon


boxplot(cancer$pulmon ~ cancer$region, las = 2, border = paleta, ylab = "tasas/100 mil habitantes", 
    main = "Incidencia de cáncer de pulmon según región, 2011")
grid()

plot of chunk mamaPulmon


boxplot(cancer$colon.recto ~ cancer$region, las = 2, border = paleta, ylab = "tasas/100 mil habitantes", 
    main = "Incidencia de cáncer de colon-recto según region, 2011")
grid()

plot of chunk mamaPulmon


boxplot(cancer$cervical ~ cancer$region, las = 2, border = paleta, ylab = "tasas/100 mil habitantes", 
    main = "Incidencia de cáncer cervical según region, 2011")
grid()

plot of chunk mamaPulmon

boxplot(cancer$higado ~ cancer$region, las = 2, border = paleta, ylab = "tasas/100 mil habitantes", 
    main = "Incidencia de cáncer de higado según region, 2011")
grid()

plot of chunk mamaPulmon

Por subregion

boxplot(cancer$mama ~ cancer$region.1, las = 2, border = paleta)
grid()

plot of chunk unnamed-chunk-1

boxplot(cancer$pulmon ~ cancer$region.1, las = 2, border = paleta)
grid()

plot of chunk unnamed-chunk-1

De inmediato buscamos el comportamiento de estos tipos de cáncer en el caso venezolano:

venezuela <- cancer[cancer$pais == "venezuela", ]
barplot(as.matrix(sort(venezuela[, 3:13])), las = 2, ylim = c(0, 20), )
grid()

plot of chunk venezuela

Observamos que los valores de las tasas de los tipos de cáncer analizados en Venezuela se conforman al patrón general de la tasa para la mayoría de y que ninguno de los valores analizado, las tasas presentan valores atípicos ni valores extremos en las modalidades analizada de cáncer analizadas. Comparamos el tercer cuartil de las tasas en el mundo y comparamos ese resultado con los valores de Venezuela:

tasaMundo <- (sapply(cancer[, 3:13], quantile, probs = 0.75))
tasaVen <- venezuela[, 3:13]
plot(tasaMundo, tasaVen, type = "n", xlim = c(0, 25), ylim = c(0, 20), xlab = "tasas correspondiente al 75% de los casos", 
    ylab = "tasas en Venezuela")
text(tasaMundo, tasaVen, names(cancer[, 3:13]))
grid(nx = 2)

plot of chunk venezulamund

Notamos que las tasas de Venezuela están por debajo del valor del tercer cuartil de las tasas en los casos de cáncer.No obstante, en los casos del cáncer de mama, leucemia, y ovarios, las tasas venezolana se aproxima al valor de las tasas correspondientes al tercer cuartil en los países analizados. Comparemos ahora la información sobre la mediana de las tasas en los países analizados, con los valores en Venezuela:

tasaMundo <- (sapply(cancer[, 3:13], quantile, probs = 0.5))
plot(tasaMundo, tasaVen, type = "n", xlim = c(0, 25), ylim = c(0, 20), xlab = "tasas correspondiente a la mediana", 
    ylab = "tasas en Venezuela")
text(tasaMundo, tasaVen, names(cancer[, 3:13]))
grid(nx = 2)

plot of chunk venezulamundoa

Las tasas de cáncer de cervical, colón-recto y pancreas son más altos en Venezuela con respecto a los valores promedios en los países analizados. En tanto que las tasas de los otros tipos de cáncer se acercan a los valores promedios de las tasas en el resto de los países, con excepción del cáncer de mama y pulmón. Sin embargo, cuando comparamos la data de Venezuela con respecto a los valores del primer cuartil de las tasas de cáncer, entonces notamos que los valores de Venezuela están por encima de los valores del resto de los paises, en algunos casos bastante por encima, con excepción de la tasa del cáncer oral, que es igual:

tasaMundo <- (sapply(cancer[, 3:13], quantile, probs = 0.25))
plot(tasaMundo, tasaVen, type = "n", xlim = c(0, 25), ylim = c(0, 20), xlab = "tasas correspondiente primer cuartil", 
    ylab = "tasas en Venezuela")
text(tasaMundo, tasaVen, names(cancer[, 3:13]))
grid(nx = 2)

plot of chunk venezulamundob

Comparamos ahora los valores de Venezuela con respecto las tasas correspondiente a la región americana

america <- cancer[cancer$region == "america", ]
tasaAmerica <- (sapply(america[, 3:13], quantile, probs = 0.75))
plot(tasaAmerica, tasaVen, type = "n", xlim = c(0, 25), ylim = c(0, 20), xlab = "tasas correspondiente al 75% de los casos en las Américas", 
    ylab = "tasas en Venezuela")
text(tasaAmerica, tasaVen, names(cancer[, 3:13]))
grid(nx = 2)

plot of chunk venezulaamerica

tasaAmerica <- (sapply(america[, 3:13], quantile, probs = 0.5))
plot(tasaAmerica, tasaVen, type = "n", xlim = c(0, 25), ylim = c(0, 20), xlab = "tasas correspondiente a la mediana en las Américas", 
    ylab = "tasas en Venezuela")
text(tasaAmerica, tasaVen, names(cancer[, 3:13]))
grid(nx = 2)

plot of chunk venezulaamerica1

tasaAmerica <- (sapply(america[, 3:13], quantile, probs = 0.25))
plot(tasaAmerica, tasaVen, type = "n", xlim = c(0, 25), ylim = c(0, 20), xlab = "tasas correspondiente al primer cuartil en las Américas", 
    ylab = "tasas en Venezuela")
text(tasaAmerica, tasaVen, names(cancer[, 3:13]))
grid(nx = 2)

plot of chunk venezulaamerica2

Dependiendo de que parte de la distribución observemos, podemos darnos cuenta de que Venezuela presenta tasas inferiores al resto de los países, o que presenta tasas superiores. En general, en nuestro país las tasas de los tipos de cáncer revisadas son inferiores al valor de las tasas en el mundo y en algunos países de América cuando comparamos los valores con los del tercer cuartil; sin embargo cuando se trata de la mediana, los valores de las tasas se acercan o son superiores al resto de los países, o, cuando comparamos con las Américas bastante similares. Finalmente, las tasas en Venezuela son más altas en la mayoría de los casos, al valor de las tasas del primer cuartil en el resto de los países, y en algunos casos con respecto a las Américas

El siguiente paso en este análisis es seleccionar el gráfico que mejor presenta esta información, eloborarlo y señalar lo que hemos observado en pocas líneas junto con las recomendaciones del caso.