Está en la página 1de 11

1

UNIVERSIDAD DEL QUINDÍO


FACULTAD DE CIENCIAS BÁSICAS Y TECNOLOGÍAS
PROGRAMA DE BIOLOGÍA
Práctica de laboratorio 1: Introducción al manejo del lenguaje R

PROFESORES: PAULA ANDREA NAVARRO SALCEDO & FERNANDO VARGAS SALINAS

OBJETIVO GENERAL
Realizar una breve introducción al uso del lenguaje de programación de R, haciendo énfasis en los
tipos de datos, funciones y manejo de bases de datos.

INTRODUCCIÓN A R

Este laboratorio presenta una corta introducción al programa R. Utilizar R es una destreza valiosa para
cualquier biólogo; sin embargo, su curva de aprendizaje no es tan fácil como otros programas
estadísticos estilo “point & click” (i.e. SPSS, XLSTAT, etc). El programa R es mucho más poderoso y
flexible; R no sólo es un programa sino también una plataforma de análisis, con una cantidad
impresionante de paquetes (programas) que se pueden descargar e instalar fácilmente de Internet y
sirven para cualquier tipo de análisis en Ecología (y en otras áreas científicas). Aprender a utilizar R es
un proceso, por lo cual, lo primero que harán es descargarlo e instalarlo. La “homepage” para
descargar R (The Comprehensive R Archive Network, CRAN) la ubican en https://www.r-
project.org/. Adicionalmente, este sitio en internet será la primera opción para que ustedes busquen
información sobre este software de programación y sus paquetes.

En Internet encontraran un gran número de guías, tutorías y videos para aprender a manejar R, por
ejemplo, el documento R para principiantes de Emmanuel Paradis, el cual, es gratuito y en español
https://cran.r-project.org/doc/contrib/rdebuts_es.pdf. Para el laboratorio de hoy, utilizaremos algunos
ejemplos del libro Statistics: an Introduction using R de Michael J. Crawley (2005).

INSTALANDO R
Para instalar R en su computador, visiten la página CRAN: https://cran.r-project.org/ y seleccionen el
sistema operativo acorde al que su equipo utiliza; hay versiones disponibles para los sistemas
operativos Linux (Debian, Fedora/Redhat, Ubuntu), macOs y Windows. R tiene una interfaz poco
amigable, sin embargo, pueden utilizar la interfaz complementaria RStudio (disponible en
https://www.rstudio.com/). RStudio contiene herramientas de visualización que facilitan el manejo de
datos. Es importante tener en cuenta que para ejecutar RStudio debe haberse instalado R previamente.
Ambos programas pueden configurarse en español o en inglés. Si tienen dudas respecto a su
instalación, pueden preguntarle al Dr. Google o a Youtube.
2

PRIMEROS PASOS EN R
R es muy sensible, tengan en cuenta la escritura antes de correr los comandos, por ejemplo,
''dryWeight'' y ``dryweight'' son diferentes, R distingue entre mayúsculas y minúsculas

Vamos a hacer algunas operaciones matemáticas simples en R para empezar a familiarizarnos con este
programa y aprender algunos tips básicos. De aquí en adelante, los comandos en letra Courier New
serán los que deben introducir en la consola de R. Al oprimir “ctrl+enter” del teclado se efectuará la
operación deseada.

Cada línea en la consola de R puede tener hasta 128 caracteres, lo que nos permite hacer operaciones
complejas. Además, ustedes pueden continuar la expresión o fórmula matemática en otra línea. Por
ejemplo:

2+354+1001-
+ 567+17

Noten que el signo “+” al comienzo de la segunda línea no hace alusión a la operación matemática,
simplemente indica al usuario que la expresión en dicha línea es una continuación de la expresión en
la línea anterior.
Pueden hacer varias operaciones al mismo tiempo (en una misma línea) si las separan con el símbolo
“;”. Por ejemplo:

2+3; 5*7; 3-7

Al oprimir “ctrl+enter” en Windows o “comand + enter” en Mac les saldría…

[1] 5
[1] 35
[1] -4

Para crear un vector (variables con uno o más valores del mismo tipo), que comprenden una secuencia
de un tipo de objeto numérico o de carácter, se puede hacer lo siguiente:

Y<-c(10,11,12,13,14,15,16) o Y<-c(10:16)
X<-c("amarillo", "verde", "rojo", "azul", "naranja")
Z<-c(2,4,8,9,10,6,1)
3

Ahora multipliquen este vector Y por el vector Z. Para esto digiten…


Y*Z

Analicen y comparen los comandos ejecutados e identifiquen el error. Además, es importante que
reconozcan la naturaleza de los objetos, ¿en este caso, que tipo de objetos son Y y Z? Para conocer de
que tipo es un objeto en R pueden escribir en la consola class(), entre paréntesis ponen el nombre
del objeto.

Cuando se tienen comandos y no sabemos cómo utilizarlos podemos hacer lo siguiente: digitamos el
signo “?” y posteriormente copiamos el comando que queremos utilizar. Esto abrirá una ventana en la
cual, podrán verificar cómo se podría utilizar dicho comando. Esto aplica para cualquier comando
siempre y cuando se digite en la consola de R el signo “?”.

Un “dataframe” es una tabla de datos que me permite incluir diferentes variables con los mismos
individuos, es decir, que puede tener tanto objetos numéricos como de carácter. El dataframe este se
puede crear directamente en R o puede ser importado de otro programa. En este caso veremos un
ejemplo donde crearemos uno directamente en R.
Para efectos de este ejercicio, nuestra tabla de datos se va a llamar “Datos”. A continuación,
escriban el siguiente comando

Datos<-
data.frame(AlturaM=c(1.78,1.70,1.72,1.76),PesoKg<c(170,164,180,178),row.names=c("Morfo1","Mo
rfo2","Morfo3","Morfo4"))

Para observar el dataframe que ustedes han creado digiten: Datos o View(Datos)

Observen qué ocurre si al ejecutar un nuevo el dataframe, el vector row.names, se reemplaza por
names. Observe que los dos dataframe que usted ha creado, son diferentes. En el primero las
unidades de muestreo son “los morfos” a los cuales. se les atribuye las variables altura y peso; en el
segundo dataframe “los morfos” son incluidos como una variable más.

Ahora los nombres AlturaM y PesoKg hacen referencia a cada columna que van a ingresar. En este
caso solo ingresarán dos columnas, pero siguiendo la misma lógica se pueden adicionar más columnas.
El comando row.names hace referencia al nombre de las filas y no es estrictamente necesario que se
digite en la consola de R, esto depende de lo que quieran hacer con sus datos. Para visualizar los datos
4

ingresados en la consola de R digiten el siguiente comando: datos$AlturaM, esto les permite


visualizar los datos ingresados en dicha columna.
Con el comando summary(Datos) se podrá obtener la media y mediana de cada una de las
variables.

Ahora crearan un dataframe (base de datos) compuesto por tres columnas (vectores). Digiten (o
copien) en la consola de R lo siguiente:

organism<-c("Human","Mouse","Fruit Fly", "Roundworm","Yeast")


genomeSizeBP<-c(3000000000,3000000000,135600000,97000000,12100000)
estGeneCount<-c(30000,30000,13061,19099,6034)

Usen la función data.frame para crear la base de datos que llamarán


comparativeGenomeSize. Digiten el siguiente comando:

comparativeGenomeSize<-data.frame(organism,genomeSizeBP,estGeneCount)

Ahora, digiten comparativeGenomeSize y opriman la tecla “enter”. Finalmente ustedes han creado un
dataframe con tres columnas conformadas por dos variables numéricas y una variable categórica.

PRIMER EJERCICIO
Hoy vamos a ver dos bases de datos. Primero, veamos unos datos simples sobre el tamaño de plantas
cultivadas en dos jardines distintos, se llaman gardenB y gardenC. El archivo de datos se llama
“DosJardines.xls”

Primero que todo, conviertan el archivo de Excel (DosJardines.xls) al formato “csv”


(DosJardines.csv). Antes de subir el archivo en R verifiquen que los datos efectivamente estén
separados por comas, para esto, abran el archivo en un bloc de notas y reemplacen por “ ,” si es
necesario. Para subir este archivo a R tengan en cuenta que deben asignar un nombre como se hizo
con los dataframe anteriores. En R puede ser algo más breve que el nombre de su archivo; en esta
práctica lo llamaremos “plantas”. Tengan en la cuenta que, en R podemos ponerle nombre a todo, y
así, cuando sea necesario referenciar a los objetos o comandos por el nombre asignado.
5

Recuerden que ustedes pueden poner el nombre que deseen, pero por simplicidad en esta práctica lo
llamaran plantas. Guarden el archivo en una carpeta que destinarán para sus actividades; en R
definan esa carpeta como directorio de trabajo con setwd(), copiando la ruta a la carpeta dentro de
la función, y reemplazando los símbolos de backslash (\) por símbolos de slash (/). Recuerden que la
ruta dependerá de la carpeta que seleccionen en su computador. Por ejemplo,

setwd(“D:/LaboratorioEco-II/Practica 1”)

Pueden verificar que la ruta de trabajo haya sido asignada digitando getwd()
Una vez establecido el directorio en R digiten plantas<- read.csv(“DosJardines.csv”)

Si lo hicieron bien, NO sale ningún tipo de mensaje de error ni confirmación, sólo el símbolo “>”,
indicando que R está listo para el siguiente comando.

UN POCO DE EXPLICACIÓN
Lo que han hecho hasta ahora es usar el comando read.csv(), y el resultado de este comando es
almacenar la matriz de datos en el archivo que aquí denominamos como “plantas”. Si por alguna
razón, quieren volver a algún comando en particular, apriman las teclas de flechas arriba o flecha
abajo. Si desean visualizar como subió la matriz de datos a R, utilicen el comando anteriormente
mencionado, esto les permitirá verificar si la base de datos subió de forma correcta y está lista para
poder llevar a cabo los análisis que requieren.

Bien, ahora digiten names(plantas)


6

R les debió retornar los nombres (names) de las variables en su juego de datos (plantas), de la
siguiente manera:
[1] "gardenB" "gardenC"

Para ver los datos dentro de cada variable, escriban el nombre de cada variable, por ejemplo: gardenB

Pueden ver el dataframe completo usando únicamente el nombre: plantas

Si quieren ver un resumen de los datos en cada variable deben usar: summary(plantas). En este caso
les arrojará un resumen de estadística descriptiva ya que, los datos que están manejando son datos
numéricos.

Para ver (o “llamar a”) una parte de los datos, se usa un comando de la siguiente forma:
variable[fila,columna]. Por ejemplo ¿cuál es el quinto valor de la segunda columna?

plantas[5,2]

¿Y si quieren ver las filas de la 6 a 10 para todas las variables (columnas)?

plantas[5:10,]

Noten que para indicar una serie de valores se usan dos puntos “:” y no el guión “-“. Tal vez se dieron
cuenta que, los promedios en los “2 jardines” son iguales. ¿Qué tal la varianza? ¿Será igual en los dos
jardines? Para ejecutar funciones para un elemento dentro del objeto plantas usaremos el símbolo $
seguido del nombre de la columna de interés. Evalúe esto con el siguiente comando

var(plantas$gardenB)
var(plantas$gardenC)

Intenten con el comando var(plantas$GardenB). ¿Qué pasó? ¿Por qué?


Bueno, vamos a buscar más datos para hacer un repaso de lo visto anteriormente y aprender un par de
cosas más. Busquen y suban a R el archivo “Nuevos2jardines.csv”. Usen el comando “read.csv”
como hicieron arriba – pongan un nombre nuevo a su dataframe, por ejemplo, “masPlantas”.

Revisen qué tienen en el nuevo dataframe.¿cómo vemos la estadística básica descriptiva de las
variables? Sino recuerdan, repasen lo dicho en la guía arriba.
7

Otra forma de resumir los datos es usando el comando “str()” que nos indica la “estructura” de los
datos:
str(masPlantas)

Si quieren sacar solo el promedio o “mean”, usen el comando “mean()”, por ejemplo:
mean(masPlantas$gardenA)
mean(masPlantas$gardenB)

GRÁFICOS EN R
Vamos a aprender conceptos básicos de cómo hacer una gráfica en R. Usando los mismos pasos de
arriba, carguen los datos del archivo “tannins.csv” en R. Para revisar los datos usen los comandos que
aprendieron arriba. ¿Cuántas variables hay? ¿Cómo se llaman? ¿Cómo son los datos crudos?

Para ver una gráfica sencilla, prueben con el siguiente comando:


plot(tannins$tannin, tannins$growth,pch=16)

Qué es “pch-16”? Para saber, le preguntamos a R directamente. Para conocer más sobre un
comando, recuerden que se escribe un “?” y después el comando. Tengan en la cuenta que, “pch” es
una opción, no un comando. Por lo tanto, deben digitar “?plot”

Lean la página que apareció. ¡No dice! Pero sale un título “Add Points To a Plot” menciona que “p”
tal vez se trata de “points”, como los “points” en la gráfica. Mire más abajo en la ventana, noten que
en la sección de “pch values” hay un montón de opciones para la forma y el tamaño de los “points” en
su gráfica. Escojan otro número de la lista para el valor de “pch” y vean que pasa

Ahora, escriban otra vez el comando plot(tannins$tannin, tannins$growth,pch=16), mantengan la


ventana de la gráfica abierta y usen el comando “abline” y escriban: abline(lm(tannins$growth~
tannins$tannin)), miren el cambio que experimenta la gráfica.

Después de su trabajo con R, deben guardar sus análisis y limpiar la memoria de la máquina. Para
guardar toda la información que sale en pantalla se puede usar el comando:

savehistory("comandos_sesion_r.txt")

En este caso se guarda inmediatamente en el fichero comandos sesion R.txt todos los
comandos dados desde el principio de la sesión. Sería útil utilizar este comando inmediatamente antes
8

de cerrar la sesión. Para terminar la sesión se usa el comando q() o bien quit(). Se nos pregunta si
queremos guardar el “workspace”, o sea, el estado de la sesión: qué variables (u otros objetos) existen
y en qué estado están. Si contestamos “y” (de yes) esta información queda guardada en el directorio
de trabajo (este no es necesariamente el directorio inicial, por eso se debe crear un directorio de
trabajo).

INFORMACION Y PRÁCTICA ADICIONAL


Hay numerosas opciones para estudiar el manejo del software R. Una de esas opciones son los
paquetes de aprendizaje de R, por ejemplo, el paquete swilr convierte la consola de R en un entorno de
aprendizaje interactivo que cubre nociones básicas de programación hasta procedimientos complejos
en manejo y análisis de datos. En esta parte de la práctica utilizarán el paquete Swirl de R, que les
permitirá reforzar algunos conceptos y comandos básicos que ya vieron; además, conocerán nuevas
funciones y comandos.

Dado que swilr es un paquete de R, lo primero que tienen que hacer es instalarlo; para ello, escriban
en la consola de R lo siguiente:

install.packages("swirl")

Si el paquete descargó de forma correcta, les aparecerá el siguiente mensaje

Una vez instalado el paquete swirl, deben cargarlo o “llamarlo”; para eso, digiten

library(“swirl”)
9

swirl()

Les aparecerá de retorno un mensaje, dándoles la bienvenida a la sesión, y les preguntará ¿cómo
debería llamarlos? Pueden poner sus nombres reales o cualquiera que deseen. Después de haber
digitado sus nombres, R les indica que cuando vean “…” (tres puntos seguidos) deben dar Enter para
continuar con la lección. Después aparecerá otro mensaje preguntándoles que curso desean instalar.

Por ahora, solo trabajarán con el curso “R Programming: The basics of programming
in R”. Para indicarle a R que curso instalarán deben escribir el número al que está asociado el
nombre del curso (ver siguiente imagen).

Una vez el curso esté instalado de forma exitosa, les aparecerá en la consola un 100%. El curso que
acabaron de instalar tiene varias lecciones de aprendizaje con diferentes temas; dado que haremos una
introduccián básica a R, seleccionen las lecciones

1. Basic Building Blocks


7. Matrices and Data Frames
15. Base Graphics

Para seleccionar la lección que van a a realizar, simplemente escriben el numero asociado a la lección
(ver imagen siguiente).
10

Para poder completar cada lección deben leer cuidadosamente qué les está solicitando R. El progreso
de la lección lo verán reflejado en un valor de porcentaje correspondiente, que se mostrará al lado
izquierdo de la consola. Cuando dan la respuesta correcta a un ejercicio que R les está solicitando, les
aparecerá un mensaje de ¡Es correcto!, ¡Gran trabajo! ¡Sigue así! y les permitirá continuar con la
lección; pero si no dan la respuesta correcta, les aparecerá un mensaje de que lo intenten de nuevo (no
podrán continuar con la lección hasta que escriban la respuesta correcta).

Sabrán que finalizaron de forma correcta la lección cuando el valor en porcentaje sea de 100%
y el paquete swirl les dé la opción de mandar por correo los resultados de su lección. Una vez
finalizada la sesión pueden iniciar con un nuevo tema o pueden simplemente “salir” del
paquete swirl.
11

Bien, este ha sido un taller de introducción muy básica a R. Bienvenidos a este amado u odiado
programa, pero innegablemente muy útil. No se entregará ningún tipo de informe de esta
práctica.

AGRADECIMIENTOS
Esta guía y todas las que hacen parte del componente práctico del espacio académico Ecología II
(Programa de Biología, Universidad del Quindío), han sido elaboradas o han recibido aportes
importantes a través de años, por parte de las siguientes personas: Oscar Aguirre Obando, Juan David
Carvajal-Castro, Paula Navarro-Salcedo, Ana María Ospina-L, Julián Rios-Soto, Yelenny López-
Aguirre, Marly Grajales-Amorocho, Caroline Guevara-Molina, Michelle Andrea Atehortua-Vallejo,
Laura Ximena Cabrera, Luisa Fernanda Arcila-Pérez, Carolina López Castañeda, Maribel Rojas y
Diana Carolina Buitrago Torres y Angela María Mendoza Henao.

También podría gustarte