5 + 7[1] 12
Como ya vimos anteriormente, R es un lenguaje orientado a objetos y existe una gran variedad de “cosas” que estos objetos pueden contener/almacenar. En general, los objetos que presentamos a continuación permiten realizar la mayoría de las tareas cotidianas en R.
| Objeto | Descripción |
|---|---|
| vector | Colección de objetos de un mismo tipo (números enteros, números reales, texto, etc.). Los vectores son los objetos básicos a partir de los cuales pueden crearse gran parte del resto de los objetos más relevantes en R. |
| data.frame | Tabla que contiene datos, conformada por una serie de columnas como vectores. Las columnas de un data.frame pueden ser vectores de distinto tipo. Generalmente, estos objetos son cargados por el usuario a partir de un archivo, pero también pueden ser creados con la función data.frame(). |
| matrix | Colección de vectores organizado en filas y columnas. A diferencia de un data.frame, es un objeto que permite operaciones matemáticas propias de las matrices (e.g., suma o producto de matrices). |
| list | Es una coleccion de objetos de cualquier tipo, sean vectores, tablas, matrices, otras listas y más. Gran parte de las salidas de las funciones de R son listas, por ejemplo, la salida de un modelo lineal con la funcion lm(). |
Un operador es una expresión, compuesta por uno o más símbolos, que realiza una operación específica sobre uno o más valores para producir un resultado.
Relacionan dos números para generar un resultado.
| Símbolo | Operación |
|---|---|
+ |
Suma |
- |
Resta |
* |
Multiplicación |
/ |
División |
^ |
Potenciación |
%/% |
División entera |
%% |
Resto de la división |
Por ejemplo:
El uso de paréntesis muchas veces es necesario:
Relacionan un valor con otro y devuelven una constante lógica (TRUE o FALSE).
| Símbolo | Operación |
|---|---|
< |
Menor a… |
<= |
Menor o igual a.. |
> |
Mayor a… |
>= |
Mayor o igual a… |
== |
Igual a… |
!= |
Distinto de… |
Por ejemplo:
Estos operadores devuelven una constante lógica (TRUE o FALSE).
| Símbolo | Operación |
|---|---|
! |
Negación |
& |
Y |
&& |
Y secuencial |
| |
O |
|| |
O secuencial |
xor |
Unión excluyente |

George Boole, matemático inglés. En su honor, los operadores lógicos también se llaman “booleanos”.
Para entender cómo funcionan estos operadores las tablas de verdad son útiles. Aquí, aprenderemos el comportamiento de estos operadores mediante ejemplos.
El operador ! devuelve el resultado opuesto de una expresión lógica dada:
El operador & (Y) combina dos o más expresiones, y devuelve TRUE sólo si todas las expresiones lógicas son verdaderas:
En cambio, devuelve FALSE si alguna de ellas no es verdadera:
El operador | (O) combina dos o más expresiones, y devuelve TRUE si al menos una de las expresiones lógicas son verdaderas:
En cambio, devuelve FALSE si ninguna de las expresiones son verdaderas:
El operador xor es en realidad una función con dos argumentos. Sólo devuelve TRUE cuando una condición es verdadera y la otra es falsa:
En cambio, devuelve FALSE cuando ambas expresiones son verdaderas:
O ambas son falsas:
Los operadores && y || trabajan secuencialmente, sólo evalúan la segunda condición si la primera es TRUE. Si la primera condición ya es FALSE, no se evalúa la segunda condición. Adquieren mayor sentido cuando el segundo elemento de la comparación no está definido, y suele utilizarse en contextos de programación más avanzada. Por ejemplo:
Aquí vemos que el objeto b no existe en el ambiente de R. Sin embargo, el resultado es FALSE porque la primera condición ya es falsa. Si hiciéramos la misma comparación con &, R devuelve un error:
Veamos un ejemplo similar con el operador ||:
El resultado es TRUE, porque la primera condición ya es verdadera. El mismo código con | arroja un error:
Las funciones all() y any() permiten evaluar más de una condición simultáneamente. La función all() devuelve TRUE si todas las condiciones indicadas son verdaderas, caso contrario devuelve FALSE. Su comportamiento es análogo al operador & utilizado secuencialmente. Las condiciones se escriben de a una y separadas por coma. Por ejemplo:
Todas las condiciones son verdaderas, por lo que devuelve TRUE. Si en cambio al menos una es falsa, obtenemos FALSE:
La función any() devuelve TRUE si al menos una condición es verdadera. Su comportamiento es análogo al operador | utilizado de manera secuencial. Por ejemplo:
En cambio, si todas las condiciones son falsas, any() devuelve FALSE:
y puede calcularse mediante la siguiente fórmula:\[ \hspace{-9cm} y = a + b\sqrt{x+2} + cx^2 \]
Siendo a = 5.3, b = 3.2 y c = 1.7, calcule el valor de y cuando x = 20.
round(), floor(), ceiling() y trunc()?