Aprende a programar en R desde 0 | Estructuras de Datos: Matrices y Data Frames | Clase 2

CÓDIGO R DEL TUTORIAL

## 2 MATRICES

# formas para crear matrices : dim, matrix,cbind,rbind ..

#Una matriz puede considerarse como un vector con un atributo de
#dimensión especial

# De hecho podemos convertir vectores en matrices con la función dim()

# ejemplo : creamos el vector x

x <- 1:10
x
dim(x) <- c(2, 5)
x

#matrix()

x <- matrix(1:10, 2, 5)
x

vector<- c(5,3,9,20,1,8,2,2,1,12)

x<- matrix(vector,2,5)
x

x<-matrix(c(5,3,9,20,1,8,2,2,1,12) , 2, 5)
x

x<-matrix(c(5,3,9,20,1,8,2,2,1,12) , 5, 2)
x

#opción por filas o colmnas

x<-matrix(c(5,3,9,20,1,8,2,2,1,12) , 2, 5,byrow=TRUE)
x

# FUnciones cbind y rbind

cbind(c(2, 1, 3), c(14, 5, 4))

rbind(c(2, 1, 3), c(14, 5, 4))

#esas dos funciones las usaremos muchos para unir filas y columans en tablas

# Calculos con matrices

x <- matrix(1:8, 2, 4, byrow = TRUE)
x

x^2

x * x^2

# también se pueden multiplicar matrices con vector

x <- matrix(1:16, ncol = 4)
x
y <- 7:10
y

x*y

# si se fijan lo que hace es ir multiplicando por orden la columna

x <- matrix(1:28, ncol = 4)
x
y <- 7:10
y
x*y

#Matrix multiplication = usamos %*%

x <- matrix(1:8, ncol = 2)
x
x %*% x

4*2 – 2*2
#da error porque las dimensiones no coinciden

#4filas y 2columnas no pueden ser multipicadas por 4 filas y 2 columnas

# se necesita que el numero de colunmas de la matrix A coincida con núm filas B

a <- matrix(1:8, ncol = 2)
b <- matrix(1:8, ncol = 4)
a
b
a= 4*2 b = 2*4

a%*%b

# Usando la traspuesta

a%*% t(a)
t(a)
a

#ALGUNAS FUNCIONES QUE PUEDEN SER APLICDAS A MATRICES
Function:
chol(x) Choleski decomposition
col(x) Matrix with column numbers of the elements
diag(x) Create a diagonal matrix from a vector
ncol(x) Returns the number of columns of a matrix
nrow(x) Returns the number of rows of a matrix
qr(x) QR matrix decomposition
row(x) Matrix with row numbers of the elements
solve(A,b) Solve the system Ax=b
solve(x) Calculate the inverse
svd(x) Singular value decomposition
var(x) Covariance matrix of the columns

###

### ARRAYS

#son vectores con un atributo de dimensión que especifica más de dos
#dimensiones.Un vector es un array unidimensional y una matriz es un array de dos
#matriz dimensional

x <- 1:8
dim(x) <- c(2, 2, 2)

#c(fila,columa,subdivision)
x

x <- 1:9
x
dim(x)<- c(3,3,1)
x
dim(x)<- c(3,1,3)
x

nuevo_array <- array(c(1:8, 11:18, 111:118), dim = c(2, 4, 3))
nuevo_array

nuevo<- array(c(2,10,11,1,2,3,5,8,45),dim = c(1, 3, 3))
nuevo

# DATA FRAMES

#Los podemos considerar como lista con elementos de la misma longitud
#serán tablas que pueden tener elementos diferentes pero tienen que tener
#la misma longitud para que cuadren. se ordenan como una tabla por filas y columans
# y serán usados muchísimos en cualquier análisis estadísticos

#n R is Longley’s Economic Data

data(longley)
longley

#dentro del daa frame podemos sacar los nombres de las filas y columnas y cambiarlos
#si lo deseamos

rownames(longley)
colnames(longley)

## CÓMO CREAR UN DATA FRAME

#se pueden crear de muchas formas, incluso importar desde csv,excel etc
#(la importación de datos lo veremos en otros videos)

#ejemplo

precio_anual <- c(2.1,1.9,1.5,3,4)
fecha <- seq(from=as.POSIXct(«2018-01-01»),to=as.POSIXct(«2022-01-01»), by = «years»)
fecha
tabla<- data.frame(fecha,precio_anual)

# se le podrían añadir otros atributos

pais<- c(«España»,»Argentina»,»México»,»Perú»,»Colombia»)
tabla<- data.frame(fecha,precio_anual,pais)

dat<- data.frame(a)

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio