UNIDAD 4: MATRICES, MARCOS DE DATOS Y LECTURA DE DATOS EN R

UNIDAD 4: MATRICES, MARCOS DE DATOS Y LECTURA DE DATOS EN R Técnicas Inteligentes en Bioinformática Máster en Lógica, Computación e Inteligencia Arti

42 downloads 42 Views 122KB Size

Recommend Stories


UNIDAD. Bases de datos
UNIDAD 7 Bases de datos Grabado de un archivo. (Wikipedia org. Dominio público) n la sociedad de la información, el almacenamiento de datos así co

UNIDAD 9 TIPOS DE DATOS
UNIDAD 9 TIPOS DE DATOS Formato del contenido Se pueden asociar a los datos que contienen las celdas un formato de dato. Esto tiene implicaciones a la

4. DATOS MUNICIPALES Datos objetivos El municipio en un vistazo
PLAN MUNICIPAL DE SAUDE 2006-2010 4. DATOS MUNICIPALES 4.1. Datos objetivos 4.1.1. El municipio en un vistazo La ciudad de Lugo se encuentra ubic

Story Transcript

UNIDAD 4: MATRICES, MARCOS DE DATOS Y LECTURA DE DATOS EN R

Técnicas Inteligentes en Bioinformática Máster en Lógica, Computación e Inteligencia Artificial Dpto. Ciencias de la Computación e Inteligencia Artificial Francisco J. Romero Campero

Universidad de Sevilla

TIPOS DE DATOS o

Simples:  Numéricos  Lógicos  Caracteres  Cadenas

o

Compuestos  Vectores  Listas  Matrices  Marcos

de datos

MATRICES: constructores  Colección

de datos del mismo tipo que tiene dos dimensiones.  Para crear una matriz usamos la función matrix  Los elementos se proporcionan en un vector y se colocan por columnas. > matrix(1:10, nrow = 2, ncol = 5) [,1] [,2] [,3] [,4] [,5] [1,]

1

3

5

7

9

[2,]

2

4

6

8

10

MATRICES: constructores datos se reciclan hasta completar la matriz.

 Los

> matrix(1:3, nrow = 2, ncol = 3) [,1] [,2] [,3] [1,]

1

3

2

[2,]

2

1

3

MATRICES: constructores el argumento byrow podemos hacer que los elementos se coloquen por filas.

 Mediante

> matrix(1:10, nrow = 2, ncol = 5, byrow = TRUE) [,1] [,2] [,3] [,4] [,5] [1,]

1

2

3

4

5

[2,]

6

7

8

9

10

MATRICES: accesores y modificadores función dim devuelve las dimensiones de la matriz.  La función nrow devuelve el número de filas.  La función ncol devuelve el número de columnas.  La

> M dim(M) [1] 3 5 > nrow(M) [1] 3 > ncol(M) [1] 5

MATRICES: accesores y modificadores  Podemos

acceder a los elementos de una matriz mediante sus índices.

> dim(M) [1] 3 5 > M[1, 2] [1] 4 > M[2, 5] [1] 14 > M[5, 3] Error: subíndice fuera de los límites

MATRICES: accesores y modificadores  Las

filas y las columnas pueden tener nombres

> rownames(M) colnames(M) M uno dos tres cuatro cinco uno

1

4

7

10

13

dos

2

5

8

11

14

tres

3

6

9

12

15

MATRICES: accesores y modificadores  Podemos

seleccionar un elemento por el nombre de su fila y su columna

> M["dos", "tres"] [1] 8 

Selección de filas

> M[1,] uno

dos

1

4

 Selección

tres cuatro 7

de columnas

> M[,3] uno 7

dos tres 8

10

9

cinco 13

MATRICES: accesores y modificadores 

Selección por matriz de índices.

> IJ1 M[IJ1] # Los elementos (1,1)-ésimo, (1,4)-ésimo y (2,3)-ésimo de M [1]

1 10

8

MATRICES: accesores y modificadores  Modificación

de los elementos de una matriz

> M[c(1, 2), c(1, 3, 4)] M uno dos tres cuatro cinco uno

0

4

0

0

13

dos

0

5

0

0

14

tres

3

6

9

12

15

MATRICES: accesores y modificadores  Modificación

de los elementos de una matriz

> M[c(1, 2), c(1, 3, 4)] M uno dos tres cuatro cinco uno

-1

4

-3

-2

13

dos

-2

5

-1

-3

14

tres

3

6

9

12

15

 Todos

los elementos deben ser del mismo tipo, en caso contrario, R realiza un ajuste.

> M[1, 1] M uno

dos tres cuatro cinco

uno

"-1" "4" "-3" "-2"

"13"

dos

"-2" "5" "-1" "-3"

"14"

tres "3"

"6" "9"

"12"

"15"

MATRICES: funciones relevantes  Las

operaciones aritmético-lógicas se realizan elemento a elemento.

> v1 v2 M1 M2 M3 M1 [,1] [,2] [,3] [1,]

1

5

9

[2,]

3

7

11

> M2 [,1] [,2] [,3] [1,]

0

4

8

[2,]

2

6

10

> M3 [,1] [,2] [1,]

1

7

[2,]

3

9

[3,]

5

11

MATRICES: funciones relevantes > M1 + M2 # Suma elemento a elemento. [,1] [,2] [,3] [1,]

1

9

17

[2,]

5

13

21

> M1 * M2 # Multiplicación elemento a elemento [,1] [,2] [,3] [1,]

0

20

72

[2,]

6

42

110

MATRICES: funciones relevantes  Multiplicación

de matrices (filas x columnas)

> M1 %*% M3 [,1] [,2] [1,]

61

151

[2,]

79

205

 Al

aplicar operaciones aritmético-lógicas, las matrices deben tener el mismo número de filas y columnas.  En el caso de la multiplicación %*%, el nº de columnas de la primera matriz debe ser igual al nº de filas de la segunda matriz

MATRICES: funciones relevantes  Concatenación

de matrices

> cbind(M1, M2) # Concatena las matrices por columnas [,1] [,2] [,3] [,4] [,5] [,6] [1,]

1

5

9

0

4

8

[2,]

3

7

11

2

6

10

> rbind(M1, M2) # Concatena las matrices por filas [,1] [,2] [,3] [1,]

1

5

9

[2,]

3

7

11

[3,]

0

4

8

[4,]

2

6

10

MATRICES: funciones relevantes  Las

matrices deben tener el mismo número de filas para concatenar por filas.

 Las

matrices deben tener el mismo número de columnas para concatenar por columnas.

MATRICES: funciones relevantes función apply permite aplicar una función a todas las filas, columnas o elementos de una matriz.

 La

> apply(M1, 1, mean) # Calcula la media de cada fila [1] 5 7 > apply(M1, 2, mean) # Calcula la media de cada columna [1] 2 6 10 > apply(M1, c(1, 2), sqrt) # Calcula la raíz cuadrada de cada elemento. [,1]

[,2]

[,3]

[1,] 1.000000 2.236068 3.000000 [2,] 1.732051 2.645751 3.316625

MATRICES: funciones relevantes  Otras

funciones útiles:

> rowSums(M1) [1] 15 21 > colSums(M1) [1] 4 12 20 > rowMeans(M1) [1] 5 7 > colMeans(M1) [1] 2 6 10

TIPOS DE DATOS o

Simples:  Numéricos  Lógicos  Caracteres  Cadenas

o

Compuestos  Vectores  Listas  Matrices  Marcos

de datos

MARCOS DE DATOS: constructores  Estructura

más genérica que una matriz.  Es como una matriz con la posibilidad de tener elementos de distintos tipos en las columnas.  Para crear un marco de datos se utiliza la función data.frame > altura peso sexo estudio estudio peso altura sexo 1

65

150

F

2

61

135

F

3

100

210

M

4

65

140

F

> rownames(estudio) [1] "1" "2" "3" "4" > colnames(estudio) [1] "peso"

"altura" "sexo"

MARCOS DE DATOS: constructores  Podemos

definir el nombre de las filas

> rownames(estudio) estudio peso altura sexo Marta

65

150

F

Inés

61

135

F

Juan

100

210

M

65

140

F

Carmen

MARCOS DE DATOS: accesores  Acceso

a datos

> estudio["Marta", "peso"] # El peso de Marta [1] 65 > estudio[, "peso"] # La columna de pesos. Es un vector. [1] 65 61 100 65 > estudio["Marta",] # Los datos de Marta. Es un marco de datos. peso altura sexo Marta

65

150

F

MARCOS DE DATOS: accesores  Acceso

a datos

> estudio[["peso"]] # La columna de pesos. Es un vector. [1] 65 61 100 65 > estudio[c("peso", "altura")] # Las columnas de pesos y alturas. Es un marco de datos. peso altura Marta

65

150

Inés

61

135

Juan

100

210

65

140

Carmen

LECTURA DE DATOS  Podemos

leer un marco de datos desde un fichero de texto mediante la función read.table  El fichero debe seguir un formato:  Todas

las filas deben tener el mismo número de elementos, salvo la primera, que tiene uno menos.  La primera fila contiene los nombres de las columnas. El resto de filas contienen como primer elemento e nombre de la fila y como resto de elementos los datos.  Los datos se separan por espacios en blanco.  La coma de los decimales es un punto (.)  Los valores desconocidos se expresan como NA

LECTURA DE DATOS  Ejemplo

de fichero: estudio.txt

“Peso” “altura” “sexo” “Marta” 65 150 “F” “Inés” 61 135 “F” “Juan” 100 210 “M” “Carmen” 65 140 “F” 

Lectura del fichero > estudio1 count.fields(“estudio.txt”) [1] 3 4 4 4 4

This work is licensed under the Creative Commons AttributionNonCommercial NoDerivs 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/. Estas transparencias están basadas en el material docente desarrollado por Francisco J. Romero Campero e Ignacio Pérez Hurtado de Mendoza para la asignatura Informática Aplicada a la Bioquímica del Grado Conjunto en Bioquímica por la Universidad de Sevilla y la Universidad de Málaga (Andalucía Tech). Este trabajo está liberado bajo la licencia Creative Commons Attribution-NonCommercial NoDerivs 3.0 Unported License.

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.