R Base
R + Ciencias Sociales
Hoja de ruta
✔️Valores
✔️Vectores (Variables)
✔️Funciones
✔️Objetos
✔️Data frames (bases de datos)
2 / 31
VALORES
3 / 31
Valores
En R la unidad mínima para trabajar son los valores:
- 1 es un valor (numérico),
- "uno" es un valor (cáracter),
- "1" es un valor (cáracter) y
- "Esto es un uno" también es un valor (cáracter).
4 / 31
VECTORES
5 / 31
Vectores
A un conjunto de valores lo llamaremos vector y R los interpretará bajo el comando c() .
Los vectores, como los valores, también serán de un tipo determinado:
- Vector numérico (numeric)
c(1, 2, 3, 4, 5)
c(1:5)
- Vector de texto (character)
c("uno", "dos", "tres", "cuatro", "cinco")
6 / 31
FUNCIONES
7 / 31
Funciones
- La función es una operación que nos ayuda a resolver un problema que de otra forma llevaría más
pasos/tiempo.
- Una función tiene nombre y suele (intenta) ser intuitivo respecto a la acción que realiza (el problema
que resuelve). También comienza y termina con paréntesis () , donde se ubica el o los argumentos.
8 / 31
Funciones
- Por ejemplo, la función class() evalúa el tipo (numérico, cáracter) de un elemento
Evaluemos de qué tipo es el valor 2
class(2)
[1] "numeric"
¿y el valor "dos" ?
class("dos")
[1] "character"
9 / 31
Funciones
- Otras funciones nos permiten incluir más de un argumento. En este caso, cada uno de ellos se
separa con una coma ( , ).
Por ejemplo, la función sum() permite sumar varios valores numéricos:
sum(2, 5, 10)
[1] 17
La función paste0() permite pegar varios valores de tipo texto:
paste0("Esto", "es", "un texto", "con", "seis", "valores")
[1] "Estoesun textoconseisvalores"
10 / 31
Funciones
- Ciertas funciones también incluyen parámetros, los cuales agregan especificaciones que hacemos a
la operación que realiza la función.
Por ejemplo, queremos una función que pegue los valores anteriores pero que los separe por un
espacio. En este caso, la función paste() (sin el 0 al final) contiene un parámetro llamado sep = , que
permite definir un separador entre cada argumento.
paste("Esto", "es", "un texto", "con", "seis", "valores", sep = "_")
[1] "Esto_es_un texto_con_seis_valores"
11 / 31
PRÁCTICA
12 / 31
Práctica
1. Sumar dos o más valores sin utilizar una función
2. Crear un vector numérico que contenga 7 valores
3. Crear un vector de texto que contenga 3 valores
4. Verificar de qué tipo es el valor "67" (comprobar con comillas y sin comillas)
5. Pegar dos o más valores de tipo character (texto), cada uno separado por un espacio en blanco
05:00
13 / 31
OBJETOS
14 / 31
Objetos
En R el elemento más importante es el objeto. Tanto valores como vectores (y practicamente,
cualquier elemento) pueden ser asignados a un objeto.
Al objeto debemos definirlo por un nombre (elige tu propia aventura) y asignarle el contenido:
15 / 31
Objetos
Al igual que valores y vectores, hay diferentes tipos de objetos:
- Objeto numérico (numeric)
edad <- c(24, 56, 75, 42, 99)
- Objeto de texto (character)
nombre <- c("D'rtanian", "Rigoberta", "Menganita", "Juancito", "Estanislao")
- (otro) objeto de texto (character)
nombre_y_apellido <- c("D'artanian estrujillo", "Rigoberta manchuria", "Menganita fulaique",
"Juancito loquillo", "Estanislao leningrado")
16 / 31
Objetos
17 / 31
Objetos
- Para ver el contenido de un objeto, simplemente debemos escribir su nombre y ejecutar en el script
o la consola
edad
[1] 24 56 75 42 99
nombre_y_apellido
[1] "D'artanian estrujillo" "Rigoberta manchuria" "Menganita fulaique"
[4] "Juancito loquillo" "Estanislao leningrado"
18 / 31
Nombrando objetos
Reglas Sugerencias Convenciones
🚫 No se aceptan espacios
Objeto llamado nombre y apellido
🚫 No se puede empezar con un número
Objeto llamado 1_objeto
19 / 31
DATA FRAMES (bases de datos)
20 / 31
Data frames
El elemento [Link] es lo que conocemos como una base de datos: Filas (casos) y columnas
(variables) relacionadas entre sí:
21 / 31
Data frames
La función [Link]() nos permite crear una base de datos vinculando vectores:
[Link](nombre_y_apellido, edad)
nombre_y_apellido edad
1 D'artanian estrujillo 24
2 Rigoberta manchuria 56
3 Menganita fulaique 75
4 Juancito loquillo 42
5 Estanislao leningrado 99
Podemos guardarlo en un objeto:
base_personas <- [Link](nombre_y_apellido, edad)
22 / 31
Data frames
Algunas funciones para trabajar con los data frames:
dim(base_personas)
[1] 5 2
summary(base_personas)
nombre_y_apellido edad
Length:5 Min. :24.0
Class :character 1st Qu.:42.0
Mode :character Median :56.0
Mean :59.2
3rd Qu.:75.0
Max. :99.0
23 / 31
Navengando por objetos: vectores
R base nos permite navegar entre los valores de un vector o data frame, y lo hace a través de []
- Supongamos que queremos extraer el 2do valor del objeto edad:
edad <- c(24, 56, 75, 42, 99)
edad[2]
[1] 56
- Podemos guardar en un objeto dicho valor
valor_2do <- edad[2]
valor_2do
[1] 56
24 / 31
Navengando por objetos: vectores
Así como podemos consultarle a R por un valor en particular de un vector, también podemos usar el
comando [] para editar ese valor:
edad[2]
[1] 56
edad[2] <- 76
Chequeo el contenido de mi objeto edad
edad
[1] 24 76 75 42 99
25 / 31
Navengando por objetos: base de datos
Supongamos que tenemos la siguiente base de datos:
edad <- c(24, 56, 75, 42, 99)
nombre_y_apellido <- c("D'artanian estrujillo", "Rigoberta manchuria", "Menganita fulaique", "J
base_personas <- [Link](nombre_y_apellido, edad)
base_personas
nombre_y_apellido edad
1 D'artanian estrujillo 24
2 Rigoberta manchuria 56
3 Menganita fulaique 75
4 Juancito loquillo 42
5 Estanislao leningrado 99
26 / 31
Navengando por objetos: base de datos
Queremos extraer la edad de Menganita fulaique:
base_personas[3,2]
[1] 75
27 / 31
Navengando por objetos: base de datos
También podemos consultarle a R por los valores de una columna entera de nuestra base con el
símbolo $ :
base_personas$nombre_y_apellido
[1] "D'artanian estrujillo" "Rigoberta manchuria" "Menganita fulaique"
[4] "Juancito loquillo" "Estanislao leningrado"
base_personas$edad
[1] 24 56 75 42 99
28 / 31
Navengando por objetos: base de datos
Y aplicar una función sobre esa columna
mean(base_personas$edad)
[1] 59.2
summary(base_personas$edad)
Min. 1st Qu. Median Mean 3rd Qu. Max.
24.0 42.0 56.0 59.2 75.0 99.0
29 / 31
PRÁCTICA
30 / 31
1. Crear un vector llamado nombre que contenga 6 valores (6 nombres)
2. Extraer el segundo valor del vector creado y asignarlo a un nuevo objeto
Dados los siguientes vectores:
localidad <- c("Jujuy", "Jujuy", "La Pampa", "Córdoba", "Jujuy", "Chubut")
tipo_alojamiento <- c("Casa", "Casa", "Depto", "Depto", "Depto", "Casa")
1. Crear un objeto de tipo [Link] (base de datos) que contenga el vector creado (nombre) más los
dos propuestos (localidad y tipo_alojamiento)
2. Extraer del [Link] el valor de la tercar fila y segunda columna.
3. Consultar del [Link] sobre los valores de la columna tipo_alojamiento
05:00
31 / 31