El arte de programar en R Un leguaje para la estadística - page 47

CAPÍTULO 2. LOS DATOS Y SUS TIPOS
44
class
(mi.tabla
$
Calentador)
## [1] "factor"
La posibilidad de operar con
rebanadas
de los data frames, es una de las
cosas que hacen más atractivas a esta estructura. Si, por ejemplo, se quiere aña-
dir, una nueva columna o componente del
data frame
, y ésta calcularla como el
resultado de multiplicar el Precio por el Area, se puede hacer de la siguiente
manera:
mi.tabla
$
Total
<-
mi.tabla
$
Precio
*
mi.tabla
$
Area
mi.tabla
## Precio Piso Area Cuartos Edad Calentador Total
## 01 52.00 111 830
5 6.2
no 43160
## 02 54.75 128 710
5 7.5
no 38872
## 03 57.50 106 1000
5 4.2
no 57500
## 04 57.50 131 690
6 8.8
no 39675
## 05 59.75 93 900
5 1.9
si 53775
2.7. Funciones
A diferencia de otros lenguajes de programación procedurales, como C, Ja-
va, y PHP, en R las funciones constituyen una
clase
. Por ejemplo, los objetos
de esa
clase
pueden ser asignados a variables; podría darse el caso, incluso, de
armar una lista cuyos elementos fueran funciones.
Aunque la escritura de funciones es parte de la programación que se verá
más adelante, se indicará aquí la forma de crear funciones como una herra-
mienta para agrupar varias operaciones.
La sintaxis para la creación de una función es como sigue:
variable
<-
function
(
arg_1
,
arg_2
, ...,
arg_n
)
expresion
Como se puede ver, se trata de una asignación de un valor: la función, a
una variable. A partir de esa definición, la variable se puede utilizar como el
nombre
de la función. En R, toda expresión tiene un valor, así que el valor de
la
expresión
será lo que la función regresará cuando se aplique. En seguida se
muestra un ejemplo.
hipotenusa
<-
function
(
x
,
y
) {
sqrt
(x
^
2
+
y
^
2
)
}
class
(hipotenusa)
## [1] "function"
1...,37,38,39,40,41,42,43,44,45,46 48,49,50,51,52,53,54,55,56,57,...198
Powered by FlippingBook