Variables declaradas como sucesiones de valores

Si deseamos asignar a una variable una sucesión de valores consecutivos podemos utilizar el operador :. Así para asignar a la variable x los valores de 1 a 10 procederíamos del siguiente modo:

x=1:10
x
##  [1]  1  2  3  4  5  6  7  8  9 10



Podemos construir secuencias de números más complejas mediante la función seq():

• Sucesión de valores de 1 a 20 de 2 en 2:

x=seq(1,20,by=2)
x
##  [1]  1  3  5  7  9 11 13 15 17 19

• Sucesión de 8 valores equiespaciados entre 1 y 20:

y=seq(1,20,length=8)
y
## [1]  1.00000  3.71429  6.42857  9.14286 11.85714 14.57143 17.28571 20.00000




Operaciones con variables numéricas

Si x e y son dos vectores de la misma dimensión, las operaciones elementales se realizan término a término (característica que se conoce como aritmética vectorial):

x=seq(2,20,by=2)  # Números pares entre 2 y 20
x
##  [1]  2  4  6  8 10 12 14 16 18 20
y=seq(1,20,by=2)  # Números impares entre 1 y 20
y
##  [1]  1  3  5  7  9 11 13 15 17 19
x+y
##  [1]  3  7 11 15 19 23 27 31 35 39
x-y
##  [1] 1 1 1 1 1 1 1 1 1 1
x*y
##  [1]   2  12  30  56  90 132 182 240 306 380
x/y
##  [1] 2.00000 1.33333 1.20000 1.14286 1.11111 1.09091 1.07692 1.06667
##  [9] 1.05882 1.05263





Funciones matemáticas

R cuenta con un catálogo muy completo de funciones matemáticas. Por citar unas pocas: logaritmo neperiano (log), exponencial (exp), seno (sin), coseno (cos), valor absoluto (abs), parte entera (floor), redondeo (round). Cuando una función se aplica a un vector, se aplica a todos y cada uno de sus elementos:

x^2
##  [1]   4  16  36  64 100 144 196 256 324 400
log(x)
##  [1] 0.693147 1.386294 1.791759 2.079442 2.302585 2.484907 2.639057
##  [8] 2.772589 2.890372 2.995732
3*x
##  [1]  6 12 18 24 30 36 42 48 54 60
1/exp(x)
##  [1] 1.35335e-01 1.83156e-02 2.47875e-03 3.35463e-04 4.53999e-05
##  [6] 6.14421e-06 8.31529e-07 1.12535e-07 1.52300e-08 2.06115e-09



El resultado de la transformación de una variable se puede guardar inmediatamente en otra variable:

logx=log(x)
logx
##  [1] 0.693147 1.386294 1.791759 2.079442 2.302585 2.484907 2.639057
##  [8] 2.772589 2.890372 2.995732

y operar con ella:

sin(logx+3)
##  [1] -0.524012 -0.947301 -0.996852 -0.933389 -0.830832 -0.716156 -0.600501
##  [8] -0.488698 -0.382789 -0.283511





Los números \(e\), \(\infty\) y \(\pi\)

El número e puede obtenerse en R como:

exp(1)
## [1] 2.71828

Asimismo R reconoce el valor \(\infty\), codificado como Inf:

1/0
## [1] Inf

El número \(\pi\) se scribe simplemente pi:

pi
## [1] 3.14159





Números complejos



R es capaz también de operar con aritmética compleja:

x=2+3i
class(x)
## [1] "complex"
y=5-2i
x+y
## [1] 7+1i
x*y
## [1] 16+11i



Para calcular raíces de números negativos hay que declararlos explícitamente como complejos:

sqrt(-2)
## [1] NaN
sqrt(as.complex(-2))
## [1] 0+1.41421i



R reconoce las funciones parte real, parte imaginaria, módulo, argumento y conjugado de un número complejo:

Re(x)
## [1] 2
Im(x)
## [1] 3
Mod(x)
## [1] 3.60555
Arg(x)
## [1] 0.982794
Conj(x)
## [1] 2-3i








© 2016 Angelo Santana, Carmen N. Hernández, Departamento de Matemáticas   ULPGC