m1=matrix(c(1,sqrt(5),-2,0),nrow = 2)
m1
## [,1] [,2]
## [1,] 1.000000 -2
## [2,] 2.236068 0
m2=matrix(1:6,nrow =3)
m2
## [,1] [,2]
## [1,] 1 4
## [2,] 2 5
## [3,] 3 6
m3=matrix(0,nrow =3,ncol=3)
m3
## [,1] [,2] [,3]
## [1,] 0 0 0
## [2,] 0 0 0
## [3,] 0 0 0
m4=diag(1,3,3)
m4
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 1 0
## [3,] 0 0 1
A=matrix(c(4,-5,-0.3,2.7),nrow = 2)
rownames(A)=c("f1","f2")
colnames(A)=c("c1","c2")
A
## c1 c2
## f1 4 -0.3
## f2 -5 2.7
B=matrix(c(3,-8,1,-0.5,1.7,3,0.8,1.25,2),nrow = 3)
rownames(B)=c("cuatro","cinco","seis")
colnames(B)=c("uno","dos","tres")
B
## uno dos tres
## cuatro 3 -0.5 0.80
## cinco -8 1.7 1.25
## seis 1 3.0 2.00
x=1:200
length(A)
## [1] 4
Imprime el numero de elementos en el vector
dim(A)
## [1] 2 2
Imprime el tamaño de La matriz: 2x2
det(A)
## [1] 9.3
Calcula el determinante.
diag(A)
## [1] 4.0 2.7
Imprime los números que aparecen en la diagonal
prod(A)
## [1] 16.2
Es la multiplicación de los numeros que comoponen la matriz
min(A)
## [1] -5
Imprime el menor numero que contiene la matriz
max(A)
## [1] 4
Imprime el numero máximo que tiene la matriz
mean(A)
## [1] 0.35
Imprime el promedio de los numeros que componen la matriz
sd(A)
## [1] 3.995414
Imprime la desviación estandar de la matriz
var(A)
## c1 c2
## c1 40.5 -13.5
## c2 -13.5 4.5
Imprime la varianza
t(A)
## f1 f2
## c1 4.0 -5.0
## c2 -0.3 2.7
Imprime la transpuesta de la matriz
solve(A)
## f1 f2
## c1 0.2903226 0.03225806
## c2 0.5376344 0.43010753
Imprime la inversa de la matriz
eigen(A)
## eigen() decomposition
## $values
## [1] 4.736542 1.963458
##
## $vectors
## [,1] [,2]
## [1,] 0.3772183 0.1457358
## [2,] -0.9261244 0.9893236
Busca los valores propios de la matriz
m2 <- numeric(9)
m2
## [1] 0 0 0 0 0 0 0 0 0
is.vector(m2)
## [1] TRUE
attributes(m2)
## NULL
Imprime un vector númerico de ceros. El codigo is.vector(m2) me responde TRUE Si es un vector El codigo attributes(m2) me responde con un FALSE si el vector no tiene atributos
dim(m2)<-c(3,3)
m2
## [,1] [,2] [,3]
## [1,] 0 0 0
## [2,] 0 0 0
## [3,] 0 0 0
El codigo dim(m2) <- c(3,3) convierte el vector de ceros en una matriz 3 x 3
attributes(m2)
## $dim
## [1] 3 3
El codigo dim(m2) Imprime la dimensión de la matriz
m3<-matrix(0,4,4)
m3
## [,1] [,2] [,3] [,4]
## [1,] 0 0 0 0
## [2,] 0 0 0 0
## [3,] 0 0 0 0
## [4,] 0 0 0 0
El codigo m3 <- matrix(0,4,4) crea una matriz de ceros con tamaño 4x4
z<-matrix(1:6,3,2)
y<-matrix(2:7,3,2)
z;y
## [,1] [,2]
## [1,] 1 4
## [2,] 2 5
## [3,] 3 6
## [,1] [,2]
## [1,] 2 5
## [2,] 3 6
## [3,] 4 7
cbind(z,y)
## [,1] [,2] [,3] [,4]
## [1,] 1 4 2 5
## [2,] 2 5 3 6
## [3,] 3 6 4 7
rbind(z,y)
## [,1] [,2]
## [1,] 1 4
## [2,] 2 5
## [3,] 3 6
## [4,] 2 5
## [5,] 3 6
## [6,] 4 7
El codigo cbind(z,y) une las matrices, sin alterar el número de filas
El codigo rbind(z,y) une las matrices, sin alterar el número de columnas
W=matrix(1:16,4,4)
W
## [,1] [,2] [,3] [,4]
## [1,] 1 5 9 13
## [2,] 2 6 10 14
## [3,] 3 7 11 15
## [4,] 4 8 12 16
W[2, 3]
## [1] 10
W[c(which(W=="11") , which(W=="12"))]
## [1] 11 12
W[2,]
## [1] 2 6 10 14
W[,3]
## [1] 9 10 11 12
W[,c(1,4)]
## [,1] [,2]
## [1,] 1 13
## [2,] 2 14
## [3,] 3 15
## [4,] 4 16
W[2:3,]
## [,1] [,2] [,3] [,4]
## [1,] 2 6 10 14
## [2,] 3 7 11 15
W[1:2,3:4]
## [,1] [,2]
## [1,] 9 13
## [2,] 10 14
A=matrix(1:16,4,4)
A
## [,1] [,2] [,3] [,4]
## [1,] 1 5 9 13
## [2,] 2 6 10 14
## [3,] 3 7 11 15
## [4,] 4 8 12 16
A[c(13,14)]
## [1] 13 14
Extrae los valores trece y catorce
A[4,]
## [1] 4 8 12 16
Extrae los numeros que estan en la fila cuatro de la matriz A
A[,2]
## [1] 5 6 7 8
Extrae los numeros que estan en la columna dos de la matriz A
A[c(1,2),c(3,4)]
## [,1] [,2]
## [1,] 9 13
## [2,] 10 14
Extrae los numeros que estan en las filas 1 y 2 en las columnas 3 y 4 de la matriz A
A=matrix(c(1,-3,2,3,2,4,0,-1.5,-0.5,-1.5,-1,2),4,3)
A
## [,1] [,2] [,3]
## [1,] 1 2.0 -0.5
## [2,] -3 4.0 -1.5
## [3,] 2 0.0 -1.0
## [4,] 3 -1.5 2.0
B=matrix(c(1,0.2,4,-1.5,1.1,-0.7,1.1,-1,1.1,1.6,0.3,-0.5),3,4)
B
## [,1] [,2] [,3] [,4]
## [1,] 1.0 -1.5 1.1 1.6
## [2,] 0.2 1.1 -1.0 0.3
## [3,] 4.0 -0.7 1.1 -0.5
A%*%B
## [,1] [,2] [,3] [,4]
## [1,] -0.6 1.05 -1.45 2.45
## [2,] -8.2 9.95 -8.95 -2.85
## [3,] -2.0 -2.30 1.10 3.70
## [4,] 10.7 -7.55 7.00 3.35
t(A)
## [,1] [,2] [,3] [,4]
## [1,] 1.0 -3.0 2 3.0
## [2,] 2.0 4.0 0 -1.5
## [3,] -0.5 -1.5 -1 2.0
t(A)%*%t(B)
## [,1] [,2] [,3]
## [1,] 12.50 -4.20 6.80
## [2,] -6.40 4.35 5.95
## [3,] 3.85 -0.15 -3.05
solve(t(A)%*%A)
## [,1] [,2] [,3]
## [1,] 0.07801108 0.03353747 -0.03849519
## [2,] 0.03353747 0.12656751 0.13298338
## [3,] -0.03849519 0.13298338 0.35170604
(B%*%t(B))+(t(A)%*%A)
## [,1] [,2] [,3]
## [1,] 30.02 -16.57 13.46
## [2,] -16.57 24.59 -11.22
## [3,] 13.46 -11.22 25.45
A=matrix(c(3,1,1,-1),2,2)
B=matrix(c(11,-1),2)
solve(A,B)
## [,1]
## [1,] 2.5
## [2,] 3.5
lista1 <- list(persona="Carlos",vector=c(pi,exp(1)), matriz=matrix(16:1,4,4), arreglo=array(24:1,c(2,3,4)))
lista1[[3]][2,2]
## [1] 11
lista1[[4]][2,2,2]
## [1] 15
lista1[[1]]
## [1] "Carlos"
El comando lista1[[1]] extrae el elelmento que compone el primer elemento de la lista.
lista1[[3]][3,3]
## [1] 6
El comando lista1[[3]][3,3] extrae el elemento ubicado en la fila 3 y la columna 3 del tercer elemento de la lista (que es una matriz).
lista1$arreglo
## , , 1
##
## [,1] [,2] [,3]
## [1,] 24 22 20
## [2,] 23 21 19
##
## , , 2
##
## [,1] [,2] [,3]
## [1,] 18 16 14
## [2,] 17 15 13
##
## , , 3
##
## [,1] [,2] [,3]
## [1,] 12 10 8
## [2,] 11 9 7
##
## , , 4
##
## [,1] [,2] [,3]
## [1,] 6 4 2
## [2,] 5 3 1
El comando lista1$arreglo extrae el elemento con nombre “arreglo”
lista1[["matriz"]]
## [,1] [,2] [,3] [,4]
## [1,] 16 12 8 4
## [2,] 15 11 7 3
## [3,] 14 10 6 2
## [4,] 13 9 5 1
El comando lista1[[“matriz”]] extrae el elemento con nombre “matriz”
ip<-installed.packages()
aip<-attributes(ip)
naip<-aip[[2]][1]
rnip<-rownames(ip)
str(ip)
## chr [1:52, 1:16] "backports" "base64enc" "bitops" "caTools" "digest" ...
## - attr(*, "dimnames")=List of 2
## ..$ : chr [1:52] "backports" "base64enc" "bitops" "caTools" ...
## ..$ : chr [1:16] "Package" "LibPath" "Version" "Priority" ...
is.array(ip)
## [1] TRUE
is.vector(ip)
## [1] FALSE
is.matrix(ip)
## [1] TRUE
is.list(ip)
## [1] FALSE
Es una matriz de caracteres con 30 filas y 16 columnas
str(aip)
## List of 2
## $ dim : int [1:2] 52 16
## $ dimnames:List of 2
## ..$ : chr [1:52] "backports" "base64enc" "bitops" "caTools" ...
## ..$ : chr [1:16] "Package" "LibPath" "Version" "Priority" ...
is.array(aip)
## [1] FALSE
is.vector(aip)
## [1] TRUE
is.matrix(aip)
## [1] FALSE
is.list(aip)
## [1] TRUE
Es una lista de dos vectores de caracteres, uno de 30 elementos y el otro de 16 elementos.
str(naip)
## List of 1
## $ : chr [1:52] "backports" "base64enc" "bitops" "caTools" ...
is.array(naip)
## [1] FALSE
is.vector(naip)
## [1] TRUE
is.matrix(naip)
## [1] FALSE
is.list(naip)
## [1] TRUE
Es una lista de un vector
str(rnip)
## chr [1:52] "backports" "base64enc" "bitops" "caTools" "digest" ...
is.array(rnip)
## [1] FALSE
is.vector(rnip)
## [1] TRUE
is.matrix(rnip)
## [1] FALSE
is.list(rnip)
## [1] FALSE
Es un vector con 30 caracteres.
dim(ip)
## [1] 52 16
RStudio tiene instalados 30 paquetes en este equipo.
set.seed(123)
X<-1:10
Y<-rpois(10,3)
reg1<- lm(Y~X)
reg1
##
## Call:
## lm(formula = Y ~ X)
##
## Coefficients:
## (Intercept) X
## 3.1333 0.0303
str(reg1)
## List of 12
## $ coefficients : Named num [1:2] 3.1333 0.0303
## ..- attr(*, "names")= chr [1:2] "(Intercept)" "X"
## $ residuals : Named num [1:10] -1.164 0.806 -1.224 1.745 2.715 ...
## ..- attr(*, "names")= chr [1:10] "1" "2" "3" "4" ...
## $ effects : Named num [1:10] -10.436 0.275 -1.079 1.985 3.05 ...
## ..- attr(*, "names")= chr [1:10] "(Intercept)" "X" "" "" ...
## $ rank : int 2
## $ fitted.values: Named num [1:10] 3.16 3.19 3.22 3.25 3.28 ...
## ..- attr(*, "names")= chr [1:10] "1" "2" "3" "4" ...
## $ assign : int [1:2] 0 1
## $ qr :List of 5
## ..$ qr : num [1:10, 1:2] -3.162 0.316 0.316 0.316 0.316 ...
## .. ..- attr(*, "dimnames")=List of 2
## .. .. ..$ : chr [1:10] "1" "2" "3" "4" ...
## .. .. ..$ : chr [1:2] "(Intercept)" "X"
## .. ..- attr(*, "assign")= int [1:2] 0 1
## ..$ qraux: num [1:2] 1.32 1.27
## ..$ pivot: int [1:2] 1 2
## ..$ tol : num 1e-07
## ..$ rank : int 2
## ..- attr(*, "class")= chr "qr"
## $ df.residual : int 8
## $ xlevels : Named list()
## $ call : language lm(formula = Y ~ X)
## $ terms :Classes 'terms', 'formula' language Y ~ X
## .. ..- attr(*, "variables")= language list(Y, X)
## .. ..- attr(*, "factors")= int [1:2, 1] 0 1
## .. .. ..- attr(*, "dimnames")=List of 2
## .. .. .. ..$ : chr [1:2] "Y" "X"
## .. .. .. ..$ : chr "X"
## .. ..- attr(*, "term.labels")= chr "X"
## .. ..- attr(*, "order")= int 1
## .. ..- attr(*, "intercept")= int 1
## .. ..- attr(*, "response")= int 1
## .. ..- attr(*, ".Environment")=<environment: R_GlobalEnv>
## .. ..- attr(*, "predvars")= language list(Y, X)
## .. ..- attr(*, "dataClasses")= Named chr [1:2] "numeric" "numeric"
## .. .. ..- attr(*, "names")= chr [1:2] "Y" "X"
## $ model :'data.frame': 10 obs. of 2 variables:
## ..$ Y: int [1:10] 2 4 2 5 6 0 3 5 3 3
## ..$ X: int [1:10] 1 2 3 4 5 6 7 8 9 10
## ..- attr(*, "terms")=Classes 'terms', 'formula' language Y ~ X
## .. .. ..- attr(*, "variables")= language list(Y, X)
## .. .. ..- attr(*, "factors")= int [1:2, 1] 0 1
## .. .. .. ..- attr(*, "dimnames")=List of 2
## .. .. .. .. ..$ : chr [1:2] "Y" "X"
## .. .. .. .. ..$ : chr "X"
## .. .. ..- attr(*, "term.labels")= chr "X"
## .. .. ..- attr(*, "order")= int 1
## .. .. ..- attr(*, "intercept")= int 1
## .. .. ..- attr(*, "response")= int 1
## .. .. ..- attr(*, ".Environment")=<environment: R_GlobalEnv>
## .. .. ..- attr(*, "predvars")= language list(Y, X)
## .. .. ..- attr(*, "dataClasses")= Named chr [1:2] "numeric" "numeric"
## .. .. .. ..- attr(*, "names")= chr [1:2] "Y" "X"
## - attr(*, "class")= chr "lm"
res<-summary(reg1)
str(res)
## List of 11
## $ call : language lm(formula = Y ~ X)
## $ terms :Classes 'terms', 'formula' language Y ~ X
## .. ..- attr(*, "variables")= language list(Y, X)
## .. ..- attr(*, "factors")= int [1:2, 1] 0 1
## .. .. ..- attr(*, "dimnames")=List of 2
## .. .. .. ..$ : chr [1:2] "Y" "X"
## .. .. .. ..$ : chr "X"
## .. ..- attr(*, "term.labels")= chr "X"
## .. ..- attr(*, "order")= int 1
## .. ..- attr(*, "intercept")= int 1
## .. ..- attr(*, "response")= int 1
## .. ..- attr(*, ".Environment")=<environment: R_GlobalEnv>
## .. ..- attr(*, "predvars")= language list(Y, X)
## .. ..- attr(*, "dataClasses")= Named chr [1:2] "numeric" "numeric"
## .. .. ..- attr(*, "names")= chr [1:2] "Y" "X"
## $ residuals : Named num [1:10] -1.164 0.806 -1.224 1.745 2.715 ...
## ..- attr(*, "names")= chr [1:10] "1" "2" "3" "4" ...
## $ coefficients : num [1:2, 1:4] 3.1333 0.0303 1.2786 0.2061 2.4506 ...
## ..- attr(*, "dimnames")=List of 2
## .. ..$ : chr [1:2] "(Intercept)" "X"
## .. ..$ : chr [1:4] "Estimate" "Std. Error" "t value" "Pr(>|t|)"
## $ aliased : Named logi [1:2] FALSE FALSE
## ..- attr(*, "names")= chr [1:2] "(Intercept)" "X"
## $ sigma : num 1.87
## $ df : int [1:3] 2 8 2
## $ r.squared : num 0.0027
## $ adj.r.squared: num -0.122
## $ fstatistic : Named num [1:3] 0.0216 1 8
## ..- attr(*, "names")= chr [1:3] "value" "numdf" "dendf"
## $ cov.unscaled : num [1:2, 1:2] 0.4667 -0.0667 -0.0667 0.0121
## ..- attr(*, "dimnames")=List of 2
## .. ..$ : chr [1:2] "(Intercept)" "X"
## .. ..$ : chr [1:2] "(Intercept)" "X"
## - attr(*, "class")= chr "summary.lm"
plot(reg1)
ts(1:10, frequency = 4, start = c(2014,2))
## Qtr1 Qtr2 Qtr3 Qtr4
## 2014 1 2 3
## 2015 4 5 6 7
## 2016 8 9 10
st1<- ts(1:38, start= c(2016,3), frequency = 12)
ts.plot(st1)
st1
## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2016 1 2 3 4 5 6 7 8 9 10
## 2017 11 12 13 14 15 16 17 18 19 20 21 22
## 2018 23 24 25 26 27 28 29 30 31 32 33 34
## 2019 35 36 37 38
window(st1, c(2017,1), c(2017,12))
## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2017 11 12 13 14 15 16 17 18 19 20 21 22
print(ts(1:20,start = c(2011,1),frequency=2),calendar=TRUE)
## p1 p2
## 2011 1 2
## 2012 3 4
## 2013 5 6
## 2014 7 8
## 2015 9 10
## 2016 11 12
## 2017 13 14
## 2018 15 16
## 2019 17 18
## 2020 19 20
print(ts(1:15,start = c(2014,1),frequency=0.5),calendar=TRUE)
## 2014 2016 2018 2020 2022 2024 2026 2028 2030 2032 2034 2036 2038 2040 2042
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
coima<-ts(1:48, start = c(2015,1), frequency = 12)
print(coima, calendar = TRUE)
## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2015 1 2 3 4 5 6 7 8 9 10 11 12
## 2016 13 14 15 16 17 18 19 20 21 22 23 24
## 2017 25 26 27 28 29 30 31 32 33 34 35 36
## 2018 37 38 39 40 41 42 43 44 45 46 47 48
window(coima, c(2017,1), c(2017,12))
## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2017 25 26 27 28 29 30 31 32 33 34 35 36
month.abb
## [1] "Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov"
## [12] "Dec"
month.name
## [1] "January" "February" "March" "April" "May"
## [6] "June" "July" "August" "September" "October"
## [11] "November" "December"
El codigo month.abb tiene el abreviado de los nombres de los meses en ingles
El codigo month.name tiene los nombres de los meses en ingles