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

ÍNDICE GENERAL
2
3. Acceso a porciones o subconjuntos de datos
48
3.1. Los operadores de acceso o selección . . . . . . . . . . . . . . . .
48
3.2. El operador
[]
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49
3.2.1. Vectores y factores . . . . . . . . . . . . . . . . . . . . . .
49
3.2.1.1. Selección de una secuencia de elementos, o ele-
mentos particulares . . . . . . . . . . . . . . . .
49
3.2.1.2. Selección de elementos de acuerdo con una con-
dición . . . . . . . . . . . . . . . . . . . . . . . .
51
3.2.2. Matrices y
data frames
. . . . . . . . . . . . . . . . . . . . .
53
3.2.2.1. El operador
[]
con un solo índice . . . . . . . .
53
3.2.2.2. Omisión de índices en el operador . . . . . . .
54
3.2.2.3. El uso de índices lógicos o condiciones . . . . .
57
3.3. Los operadores
[[]]
y
$
. . . . . . . . . . . . . . . . . . . . . . .
60
4. Estructuras de control y manejo de datos
64
4.1. La construcciones IF-ELSE . . . . . . . . . . . . . . . . . . . . . .
64
4.2. Los ciclos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
66
4.2.1. Repeticiones por un número determinado de veces . . .
66
4.2.2. Repeticiones mientras se cumple una condición . . . . .
67
4.2.3. Repeticiones
infinitas
. . . . . . . . . . . . . . . . . . . . .
67
4.2.4. Interrupciones del flujo normal de los ciclos . . . . . . .
67
4.3. Funciones de clasificación, transformación y agregación de datos 70
4.3.1. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . .
70
4.3.2. Las funciones
sapply()
y
lapply()
. . . . . . . . . . . .
74
4.3.3. Operaciones marginales en matrices y la función
apply()
75
4.3.4. Clasificaciones y uso de la función
split()
. . . . . . .
76
4.3.5. Clasificación y operación: las funciones
by()
,
aggregate()
y
tapply()
. . . . . . . . . . . . . . . . . . . . . . . . . .
81
5. Escritura de Funciones
87
5.1. Estructura formal de una función . . . . . . . . . . . . . . . . . .
87
5.1.1. Argumentos y valor de resultado de una función . . . .
88
5.1.2. Revisión de los argumentos de una función . . . . . . . .
91
5.1.3. El argumento especial
“...”
. . . . . . . . . . . . . . . .
92
5.1.3.1. El uso del argumento
“...”
para extender una
función . . . . . . . . . . . . . . . . . . . . . . .
92
5.1.3.2. El uso del argumento
“...”
al principio de una
función, cuando no se conoce de antemano el
número de argumentos . . . . . . . . . . . . . .
93
5.2. Visibilidad del código . . . . . . . . . . . . . . . . . . . . . . . . .
93
5.2.1. Asociación de símbolos con valores . . . . . . . . . . . .
94
5.2.2. Reglas de alcance . . . . . . . . . . . . . . . . . . . . . . .
98
5.3. Contenido de los ambientes de las funciones . . . . . . . . . . . 101
5.4. Recursividad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.5. Ejemplo: ajuste de datos a una función de distribución . . . . . 105
5.5.1. Histogramas de frecuencias . . . . . . . . . . . . . . . . . 105
1,2,3,4 6,7,8,9,10,11,12,13,14,15,...198
Powered by FlippingBook