A<-matrix(c(1,5,2,3,2,4,1,5,8),byrow=TRUE,nrow=3);A
## [,1] [,2] [,3]
## [1,] 1 5 2
## [2,] 3 2 4
## [3,] 1 5 8
B<-matrix(c(2,-1,3,3,0,1,4,-2,1),byrow=TRUE,nrow=3);B
## [,1] [,2] [,3]
## [1,] 2 -1 3
## [2,] 3 0 1
## [3,] 4 -2 1
C<-matrix(c(10,8,7,12),byrow=TRUE,nrow=2);C
## [,1] [,2]
## [1,] 10 8
## [2,] 7 12
dim(A)
## [1] 3 3
A[2,3]
## [1] 4
B[2,]
## [1] 3 0 1
A[,3]
## [1] 2 4 8
A1 <- rbind(A, c(6, 1, 7))
A1
## [,1] [,2] [,3]
## [1,] 1 5 2
## [2,] 3 2 4
## [3,] 1 5 8
## [4,] 6 1 7
A2 <- cbind(A, c(6, 1, 7))
A2
## [,1] [,2] [,3] [,4]
## [1,] 1 5 2 6
## [2,] 3 2 4 1
## [3,] 1 5 8 7
cbind(A,B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 1 5 2 2 -1 3
## [2,] 3 2 4 3 0 1
## [3,] 1 5 8 4 -2 1
rbind(A,B)
## [,1] [,2] [,3]
## [1,] 1 5 2
## [2,] 3 2 4
## [3,] 1 5 8
## [4,] 2 -1 3
## [5,] 3 0 1
## [6,] 4 -2 1
AT<-t(A);AT
## [,1] [,2] [,3]
## [1,] 1 3 1
## [2,] 5 2 5
## [3,] 2 4 8
#suma
S1<-A+B;S1
## [,1] [,2] [,3]
## [1,] 3 4 5
## [2,] 6 2 5
## [3,] 5 3 9
S2<-B-A;S2
## [,1] [,2] [,3]
## [1,] 1 -6 1
## [2,] 0 -2 -3
## [3,] 3 -7 -7
S3<-3*A;S3
## [,1] [,2] [,3]
## [1,] 3 15 6
## [2,] 9 6 12
## [3,] 3 15 24
S4<-A*B;S4
## [,1] [,2] [,3]
## [1,] 2 -5 6
## [2,] 9 0 4
## [3,] 4 -10 8
S5<-A%*%B;S5
## [,1] [,2] [,3]
## [1,] 25 -5 10
## [2,] 28 -11 15
## [3,] 49 -17 16
I1<-solve(A);I1
## [,1] [,2] [,3]
## [1,] 0.05128205 0.38461538 -0.20512821
## [2,] 0.25641026 -0.07692308 -0.02564103
## [3,] -0.16666667 0.00000000 0.16666667
ginv(A)
## [,1] [,2] [,3]
## [1,] 0.05128205 3.846154e-01 -0.20512821
## [2,] 0.25641026 -7.692308e-02 -0.02564103
## [3,] -0.16666667 5.551115e-17 0.16666667
crossprod(A,B)
## [,1] [,2] [,3]
## [1,] 15 -3 7
## [2,] 36 -15 22
## [3,] 48 -18 18
Equivalente a
t(A) %*% B
## [,1] [,2] [,3]
## [1,] 15 -3 7
## [2,] 36 -15 22
## [3,] 48 -18 18
También
tcrossprod(A, B)
## [,1] [,2] [,3]
## [1,] 3 5 -4
## [2,] 16 13 12
## [3,] 21 11 2
Equivalente a
A %*% t(B)
## [,1] [,2] [,3]
## [1,] 3 5 -4
## [2,] 16 13 12
## [3,] 21 11 2
A %o% B
## , , 1, 1
##
## [,1] [,2] [,3]
## [1,] 2 10 4
## [2,] 6 4 8
## [3,] 2 10 16
##
## , , 2, 1
##
## [,1] [,2] [,3]
## [1,] 3 15 6
## [2,] 9 6 12
## [3,] 3 15 24
##
## , , 3, 1
##
## [,1] [,2] [,3]
## [1,] 4 20 8
## [2,] 12 8 16
## [3,] 4 20 32
##
## , , 1, 2
##
## [,1] [,2] [,3]
## [1,] -1 -5 -2
## [2,] -3 -2 -4
## [3,] -1 -5 -8
##
## , , 2, 2
##
## [,1] [,2] [,3]
## [1,] 0 0 0
## [2,] 0 0 0
## [3,] 0 0 0
##
## , , 3, 2
##
## [,1] [,2] [,3]
## [1,] -2 -10 -4
## [2,] -6 -4 -8
## [3,] -2 -10 -16
##
## , , 1, 3
##
## [,1] [,2] [,3]
## [1,] 3 15 6
## [2,] 9 6 12
## [3,] 3 15 24
##
## , , 2, 3
##
## [,1] [,2] [,3]
## [1,] 1 5 2
## [2,] 3 2 4
## [3,] 1 5 8
##
## , , 3, 3
##
## [,1] [,2] [,3]
## [1,] 1 5 2
## [2,] 3 2 4
## [3,] 1 5 8
Equivalente a
outer(A, B, FUN = "*")
## , , 1, 1
##
## [,1] [,2] [,3]
## [1,] 2 10 4
## [2,] 6 4 8
## [3,] 2 10 16
##
## , , 2, 1
##
## [,1] [,2] [,3]
## [1,] 3 15 6
## [2,] 9 6 12
## [3,] 3 15 24
##
## , , 3, 1
##
## [,1] [,2] [,3]
## [1,] 4 20 8
## [2,] 12 8 16
## [3,] 4 20 32
##
## , , 1, 2
##
## [,1] [,2] [,3]
## [1,] -1 -5 -2
## [2,] -3 -2 -4
## [3,] -1 -5 -8
##
## , , 2, 2
##
## [,1] [,2] [,3]
## [1,] 0 0 0
## [2,] 0 0 0
## [3,] 0 0 0
##
## , , 3, 2
##
## [,1] [,2] [,3]
## [1,] -2 -10 -4
## [2,] -6 -4 -8
## [3,] -2 -10 -16
##
## , , 1, 3
##
## [,1] [,2] [,3]
## [1,] 3 15 6
## [2,] 9 6 12
## [3,] 3 15 24
##
## , , 2, 3
##
## [,1] [,2] [,3]
## [1,] 1 5 2
## [2,] 3 2 4
## [3,] 1 5 8
##
## , , 3, 3
##
## [,1] [,2] [,3]
## [1,] 1 5 2
## [2,] 3 2 4
## [3,] 1 5 8
qr(A)$rank
## [1] 3
qr(C)$rank
## [1] 2
A %x% B
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
## [1,] 2 -1 3 10 -5 15 4 -2 6
## [2,] 3 0 1 15 0 5 6 0 2
## [3,] 4 -2 1 20 -10 5 8 -4 2
## [4,] 6 -3 9 4 -2 6 8 -4 12
## [5,] 9 0 3 6 0 2 12 0 4
## [6,] 12 -6 3 8 -4 2 16 -8 4
## [7,] 2 -1 3 10 -5 15 16 -8 24
## [8,] 3 0 1 15 0 5 24 0 8
## [9,] 4 -2 1 20 -10 5 32 -16 8
diag(A)
## [1] 1 2 8
diag(apply(A, 2, rev))
## [1] 1 2 2
diag(c(1,2,3))
## [,1] [,2] [,3]
## [1,] 1 0 0
## [2,] 0 2 0
## [3,] 0 0 3
S6<-sum(diag(B));S6
## [1] 3
diag(4)
## [,1] [,2] [,3] [,4]
## [1,] 1 0 0 0
## [2,] 0 1 0 0
## [3,] 0 0 1 0
## [4,] 0 0 0 1
diag(0,3)
## [,1] [,2] [,3]
## [1,] 0 0 0
## [2,] 0 0 0
## [3,] 0 0 0
diag(0,2,4)
## [,1] [,2] [,3] [,4]
## [1,] 0 0 0 0
## [2,] 0 0 0 0
matrix(0,nrow=4,ncol=4)
## [,1] [,2] [,3] [,4]
## [1,] 0 0 0 0
## [2,] 0 0 0 0
## [3,] 0 0 0 0
## [4,] 0 0 0 0
M1<-matrix(1,nrow = 4,ncol=5);M1
## [,1] [,2] [,3] [,4] [,5]
## [1,] 1 1 1 1 1
## [2,] 1 1 1 1 1
## [3,] 1 1 1 1 1
## [4,] 1 1 1 1 1
eigen(A)
## eigen() decomposition
## $values
## [1] 11.363975 -2.808185 2.444210
##
## $vectors
## [,1] [,2] [,3]
## [1,] 0.3782381 0.7269595 0.7473576
## [2,] 0.4634800 -0.6463857 0.4213584
## [3,] 0.8013253 0.2317659 -0.5137253
eigen(A)$values
## [1] 11.363975 -2.808185 2.444210
eigen(A)$vectors
## [,1] [,2] [,3]
## [1,] 0.3782381 0.7269595 0.7473576
## [2,] 0.4634800 -0.6463857 0.4213584
## [3,] 0.8013253 0.2317659 -0.5137253
eigen(A)
## eigen() decomposition
## $values
## [1] 11.363975 -2.808185 2.444210
##
## $vectors
## [,1] [,2] [,3]
## [1,] 0.3782381 0.7269595 0.7473576
## [2,] 0.4634800 -0.6463857 0.4213584
## [3,] 0.8013253 0.2317659 -0.5137253
svd(C)
## $d
## [1] 18.577731 3.444985
##
## $u
## [,1] [,2]
## [1,] -0.6756412 -0.7372306
## [2,] -0.7372306 0.6756412
##
## $v
## [,1] [,2]
## [1,] -0.6414683 -0.7671495
## [2,] -0.7671495 0.6414683
qr(C)
## $qr
## [,1] [,2]
## [1,] -12.2065556 -13.435403
## [2,] 0.5734623 5.243084
##
## $rank
## [1] 2
##
## $qraux
## [1] 1.819232 5.243084
##
## $pivot
## [1] 1 2
##
## attr(,"class")
## [1] "qr"
qr(C)$qr
## [,1] [,2]
## [1,] -12.2065556 -13.435403
## [2,] 0.5734623 5.243084
chol(C)
## [,1] [,2]
## [1,] 3.162278 2.529822
## [2,] 0.000000 2.366432
rowSums(A)
## [1] 8 9 14
colSums(A)
## [1] 5 12 14
rowMeans(B)
## [1] 1.333333 1.333333 1.000000
colMeans(B)
## [1] 3.000000 -1.000000 1.666667
\(3x+2y+z=6\)
\(2x-y+4z=-4\)
\(x+y-2z=5\)
X=matrix(c(3,2,1,2,-1,4,1,1,-2),byrow=TRUE,nrow=3);X
## [,1] [,2] [,3]
## [1,] 3 2 1
## [2,] 2 -1 4
## [3,] 1 1 -2
Y=matrix(c(6,-4,5),byrow=TRUE,nrow=3);Y
## [,1]
## [1,] 6
## [2,] -4
## [3,] 5
solve(X,Y)
## [,1]
## [1,] 1
## [2,] 2
## [3,] -1
G<-matrix(c(3,2,7,9,0,5,1,11,8,5,2,3),byrow=T,nrow=3)
rownames(G)<-c("Fila 1", "Fila 2", "Fila 3")
colnames(G)<-c("col 1","col 2","col 3","col 4")
G
## col 1 col 2 col 3 col 4
## Fila 1 3 2 7 9
## Fila 2 0 5 1 11
## Fila 3 8 5 2 3
|-|-|-|
O.M.F.
|-|-|-|