Acitvidad 1
sumatoria <- function(k){
sumatoria = 0
for (i in seq(k)) {
s_i = (1/(2^i))
sumatoria= sumatoria+s_i
print(sumatoria)
}
return(sumatoria)
}
#Evaluando K desde 1 hasta 100
sumatoria(100)
## [1] 0.5
## [1] 0.75
## [1] 0.875
## [1] 0.9375
## [1] 0.96875
## [1] 0.984375
## [1] 0.9921875
## [1] 0.9960938
## [1] 0.9980469
## [1] 0.9990234
## [1] 0.9995117
## [1] 0.9997559
## [1] 0.9998779
## [1] 0.999939
## [1] 0.9999695
## [1] 0.9999847
## [1] 0.9999924
## [1] 0.9999962
## [1] 0.9999981
## [1] 0.999999
## [1] 0.9999995
## [1] 0.9999998
## [1] 0.9999999
## [1] 0.9999999
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
## [1] 1
#Guardar los resultados uno a uno en vector
sumatoria1 <- function(k){
sumatoria1 = 0
vec_sumatoria = NULL
for (i in seq(k)) {
s_i1 = (1/(2^i)) #Calculo punto por punto
sumatoria1 = sumatoria1 + s_i1
vec_sumatoria[i] = sumatoria1 #Guardar el vector
}
return(vec_sumatoria)
}
#Sumatoria acumulada
p = sumatoria1(100)
#Grafica del progreso de los valores
plot(p)
sumatoria2 <- function(k){
sumatoria2 = 0
for (i in seq(k)) {
s_i2 = (1/(factorial(1:i)))
sumatoria2= sum(s_i2)
print(sumatoria2)
}
return(sumatoria2)
}
#Evaluando cuando K desde 1 a 20
sumatoria2(20)
## [1] 1
## [1] 1.5
## [1] 1.666667
## [1] 1.708333
## [1] 1.716667
## [1] 1.718056
## [1] 1.718254
## [1] 1.718279
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
## [1] 1.718282
#Guardar los resultados uno a uno en vector
sumatoria2.1 <- function(k){
sumatoria2.1 = 0
vec_sumatoria2 = NULL
for (i in seq(k)) {
s_i2 = (1/(factorial(1:i))) #Calculo punto por punto
sumatoria2.1= sum(s_i2)
vec_sumatoria2[i] = sumatoria2.1 #Guardar el vector
}
return(vec_sumatoria2)
}
#Sumatoria acumulada
p2 = sumatoria2.1(20)
#Grafica del progreso de los valores
plot(p2)
productoria <- function(x){
producto = 1
for (j in seq(x)) {
for (i in seq(1:6)) {
n = 2^i
k=j^n
p_i = 1+k
producto= producto*p_i
}
print(producto)
}
return(producto)
}
#Evaluado desde x=1 hasta x=5, con n 1:6 para cada x
productoria(5)
## [1] 64
## [1] 7.259357e+39
## [1] 1.069865e+100
## [1] 8.25879e+175
## [1] 1.011267e+264
## [1] 1.011267e+264
#Guardar los resultados uno a uno en vector
productoria <- function(x){
producto = 1
vec_producto = NULL
for (j in seq(x)) {
for (i in seq(1:6)) {
n = 2^i
k=j^n
p_i = 1+k
producto= producto*p_i
}
vec_producto[j] = producto
print(producto)
}
return(vec_producto)
}
#Evaluando
p3 = productoria(5)
## [1] 64
## [1] 7.259357e+39
## [1] 1.069865e+100
## [1] 8.25879e+175
## [1] 1.011267e+264
#Graficar
plot(p3)
-Otra forma punto 3 \[\prod_{n=1}^{6}(1+x^{2^{n}})\]
productoria1.1 <- function(x){
producto1.1 = 1
for (i in seq(1:6)) {
p_i1.1 = 1+(x^(2^i))
producto1.1= producto1.1*p_i1.1
print(producto1.1)
}
return(producto1.1)
}
#Evaluado con x=1
productoria1.1(1)
## [1] 2
## [1] 4
## [1] 8
## [1] 16
## [1] 32
## [1] 64
## [1] 64
#Guardar los resultados uno a uno en vector
productoria1.1 <- function(x){
producto1.1 = 1
vec_producto = NULL
for (i in seq(1:6)) {
p_i1.1 = 1+(x^(2^i))
producto1.1= producto1.1*p_i1.1
vec_producto[i] = producto1.1
print(producto1.1)
}
return(vec_producto)
}
#Evaluando x=1
p4 = productoria1.1(1)
## [1] 2
## [1] 4
## [1] 8
## [1] 16
## [1] 32
## [1] 64
#Graficar
plot(p4)
#Guardando resultados en vector
productoria2<- function(k){
vec_producto2 = NULL
for (i in seq(k)) {
p_i2 = (4*i^2)/((2*i^2)-1)
vec_producto2[i] = p_i2
}
return(vec_producto2)
}
#Evaluando cuando k=1, k=2,...,k=50
productoria2(50)
## [1] 4.000000 2.285714 2.117647 2.064516 2.040816 2.028169 2.020619 2.015748
## [9] 2.012422 2.010050 2.008299 2.006969 2.005935 2.005115 2.004454 2.003914
## [17] 2.003466 2.003091 2.002774 2.002503 2.002270 2.002068 2.001892 2.001738
## [25] 2.001601 2.001480 2.001373 2.001276 2.001190 2.001112 2.001041 2.000977
## [33] 2.000919 2.000865 2.000817 2.000772 2.000731 2.000693 2.000658 2.000625
## [41] 2.000595 2.000567 2.000541 2.000517 2.000494 2.000473 2.000453 2.000434
## [49] 2.000417 2.000400
#Grafica del progreso de los valores
plot(productoria2(50))
- Punto 5 \[\prod_{n=0}^{\infty}\frac{x^{2^{n}}}{(2n)!}\]
productoria3 <- function(x,n){
producto3 = 1
for (i in 0:n) {
p_i3 = x^(2^i)/factorial(2*i)
producto3= producto3*p_i3
print(producto3)
}
return(producto3)}
#Evaluado desde x=1 hasta x=5
productoria3(1,25)
## [1] 1
## [1] 0.5
## [1] 0.02083333
## [1] 2.893519e-05
## [1] 7.176385e-10
## [1] 1.977619e-16
## [1] 4.128628e-25
## [1] 4.735844e-36
## [1] 2.263486e-49
## [1] 3.535386e-65
## [1] 1.453156e-83
## [1] 1.292842e-104
## [1] 2.083723e-128
## [1] 5.166791e-155
## [1] 1.69465e-184
## [1] 6.38881e-217
## [1] 2.427997e-252
## [1] 8.22401e-291
## [1] 0
## [1] 0
## [1] 0
## [1] 0
## [1] 0
## [1] 0
## [1] 0
## [1] 0
## [1] 0
#Guardar los resultados uno a uno en vector
productoria3 <- function(x,n){
producto3 = 1
vec_producto = NULL
for (i in 0:n) {
p_i3 = x^(2^i)/factorial(2*i)
producto3= producto3*p_i3
vec_producto[i] = producto3
print(producto3)
}
return(vec_producto)
}
#Evaluando x=1
p6 = productoria3(1,25)
## [1] 1
## [1] 0.5
## [1] 0.02083333
## [1] 2.893519e-05
## [1] 7.176385e-10
## [1] 1.977619e-16
## [1] 4.128628e-25
## [1] 4.735844e-36
## [1] 2.263486e-49
## [1] 3.535386e-65
## [1] 1.453156e-83
## [1] 1.292842e-104
## [1] 2.083723e-128
## [1] 5.166791e-155
## [1] 1.69465e-184
## [1] 6.38881e-217
## [1] 2.427997e-252
## [1] 8.22401e-291
## [1] 0
## [1] 0
## [1] 0
## [1] 0
## [1] 0
## [1] 0
## [1] 0
## [1] 0
#Graficar
plot(p6)
-Punto 6 \[\sum_{n=0}^{\infty}\frac{(-1)^{n}x^{2^{n+1}}}{(2n+1)!}\]
sumatoria3 <- function(x,n){
sumatoria3 = 0
for (i in 0:n) {
s_i3 = ((-1)^i)*(x^(2^(i+1)))/(factorial((2*i)+1))
sumatoria3= sumatoria3+s_i3
print(sumatoria3)
}
return(sumatoria3)}
#Evaluado con x=1
sumatoria3(1,25)
## [1] 1
## [1] 0.8333333
## [1] 0.8416667
## [1] 0.8414683
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
#Guardar los resultados uno a uno en vector
sumatoria3 <- function(x,n){
sumatoria3 = 0
vec_producto = NULL
for (i in 0:n) {
s_i3 = ((-1)^i)*(x^(2^(i+1)))/(factorial((2*i)+1))
sumatoria3= sumatoria3 + s_i3
vec_producto[i] = sumatoria3
print(sumatoria3)
}
return(vec_producto)
}
#Evaluando con x=1
p7 = sumatoria3(1,25)
## [1] 1
## [1] 0.8333333
## [1] 0.8416667
## [1] 0.8414683
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
## [1] 0.841471
#Graficar
plot(p7,ylim = c(0.83,1), xlim = c(0,25))
points(0,1)
Acitvidad 2 -Punto 1 \[y= x^5-7x^4-162x^3+878x^2+3937x-15015\]
ejr_2.1 = function(x){
for (i in -x:x) {
y = (i^5)-(7*(i^4))-(162*(i^3))+(878*(i^2))+(3937*(i))-15015
print(y)
}
return(y)
}
ejr_2.1(20)
## [1] -2766555
## [1] -2050048
## [1] -1481025
## [1] -1036800
## [1] -697015
## [1] -443520
## [1] -260253
## [1] -133120
## [1] -49875
## [1] 0
## [1] 25415
## [1] 33792
## [1] 31185
## [1] 22400
## [1] 11115
## [1] 0
## [1] -9163
## [1] -15360
## [1] -18225
## [1] -17920
## [1] -15015
## [1] -10368
## [1] -5005
## [1] 0
## [1] 3645
## [1] 5120
## [1] 3927
## [1] 0
## [1] -6175
## [1] -13440
## [1] -19845
## [1] -22528
## [1] -17595
## [1] 0
## [1] 36575
## [1] 99840
## [1] 199017
## [1] 344960
## [1] 550275
## [1] 829440
## [1] 1198925
## [1] 1198925
ejr_2.1 = function(x){
y = (x^5)-(7*(x^4))-(162*(x^3))+(878*(x^2))+(3937*(x))-15015
return(y)
}
#Evaluando cuando x valga de -10 a 10
x1 = seq(-20,20,1)
ej1 = ejr_2.1(x1); ej1
## [1] -2766555 -2050048 -1481025 -1036800 -697015 -443520 -260253 -133120
## [9] -49875 0 25415 33792 31185 22400 11115 0
## [17] -9163 -15360 -18225 -17920 -15015 -10368 -5005 0
## [25] 3645 5120 3927 0 -6175 -13440 -19845 -22528
## [33] -17595 0 36575 99840 199017 344960 550275 829440
## [41] 1198925
#Grafica
plot(x1,ej1,col="Blue", main= 'Función 2.1', type = 'l')
La funcion no tiene puntos no definidos ni limitaciones de dominio.Por lo tanto, el dominio es \((-\infty<x<\infty)\)
-Punto 2
\[y=\frac{\sin(x)}{x}\]
ejr_2.2 = function(x){
for (i in -x:x) {
y = sin(i)/i
print(y)
}
return(y)
}
ejr_2.2(20)
## [1] 0.04564726
## [1] 0.007888274
## [1] -0.04172151
## [1] -0.05655279
## [1] -0.01799396
## [1] 0.04335252
## [1] 0.07075767
## [1] 0.03232054
## [1] -0.04471441
## [1] -0.0909082
## [1] -0.05440211
## [1] 0.04579094
## [1] 0.1236698
## [1] 0.09385523
## [1] -0.04656925
## [1] -0.1917849
## [1] -0.1892006
## [1] 0.04704
## [1] 0.4546487
## [1] 0.841471
## [1] NaN
## [1] 0.841471
## [1] 0.4546487
## [1] 0.04704
## [1] -0.1892006
## [1] -0.1917849
## [1] -0.04656925
## [1] 0.09385523
## [1] 0.1236698
## [1] 0.04579094
## [1] -0.05440211
## [1] -0.0909082
## [1] -0.04471441
## [1] 0.03232054
## [1] 0.07075767
## [1] 0.04335252
## [1] -0.01799396
## [1] -0.05655279
## [1] -0.04172151
## [1] 0.007888274
## [1] 0.04564726
## [1] 0.04564726
ejr_2.2 <- function(x){
y = sin(x)/x
return(y)
}
#Evaluando cuando x valga de -10 a 10
x2 = seq(-20,20,1)
ej2 = ejr_2.2(x2); ej2
## [1] 0.045647263 0.007888274 -0.041721514 -0.056552794 -0.017993957
## [6] 0.043352523 0.070757668 0.032320541 -0.044714410 -0.090908201
## [11] -0.054402111 0.045790943 0.123669781 0.093855228 -0.046569250
## [16] -0.191784855 -0.189200624 0.047040003 0.454648713 0.841470985
## [21] NaN 0.841470985 0.454648713 0.047040003 -0.189200624
## [26] -0.191784855 -0.046569250 0.093855228 0.123669781 0.045790943
## [31] -0.054402111 -0.090908201 -0.044714410 0.032320541 0.070757668
## [36] 0.043352523 -0.017993957 -0.056552794 -0.041721514 0.007888274
## [41] 0.045647263
#Grafica
plot(x2,ej2, col="red", main= 'Función 2.2', type = 'l')
La funcion no presenta un punto definido cuando \(X=0\) por lo tanto el dominio de la funcion es \(x<0\) y \(x>0\)
ejr_2.3 = function(x){
for (i in -x:x) {
y = (cos(i)-1)/i
print(y)
}
return(y)
}
ejr_2.3(20)
## [1] 0.0295959
## [1] 0.0005944938
## [1] 0.01887129
## [1] 0.07500961
## [1] 0.1223537
## [1] 0.1173125
## [1] 0.06166163
## [1] 0.007119478
## [1] 0.01301217
## [1] 0.09050675
## [1] 0.1839072
## [1] 0.2123478
## [1] 0.1431875
## [1] 0.03515682
## [1] 0.006638286
## [1] 0.1432676
## [1] 0.4134109
## [1] 0.6633308
## [1] 0.7080734
## [1] 0.4596977
## [1] NaN
## [1] -0.4596977
## [1] -0.7080734
## [1] -0.6633308
## [1] -0.4134109
## [1] -0.1432676
## [1] -0.006638286
## [1] -0.03515682
## [1] -0.1431875
## [1] -0.2123478
## [1] -0.1839072
## [1] -0.09050675
## [1] -0.01301217
## [1] -0.007119478
## [1] -0.06166163
## [1] -0.1173125
## [1] -0.1223537
## [1] -0.07500961
## [1] -0.01887129
## [1] -0.0005944938
## [1] -0.0295959
## [1] -0.0295959
ejr_2.3 <- function(x){
y = (cos(x)-1)/x
return(y)
}
#Evaluando cuando x valga de -10 a 10
x3 = seq(-20,20,1)
ej3 = ejr_2.3(x3); ej3
## [1] 0.0295958969 0.0005944938 0.0188712940 0.0750096081 0.1223537175
## [6] 0.1173125275 0.0616616273 0.0071194783 0.0130121701 0.0905067547
## [11] 0.1839071529 0.2123478069 0.1431875042 0.0351568208 0.0066382856
## [16] 0.1432675629 0.4134109052 0.6633308322 0.7080734183 0.4596976941
## [21] NaN -0.4596976941 -0.7080734183 -0.6633308322 -0.4134109052
## [26] -0.1432675629 -0.0066382856 -0.0351568208 -0.1431875042 -0.2123478069
## [31] -0.1839071529 -0.0905067547 -0.0130121701 -0.0071194783 -0.0616616273
## [36] -0.1173125275 -0.1223537175 -0.0750096081 -0.0188712940 -0.0005944938
## [41] -0.0295958969
#Grafica
plot(x3,ej3, col="orange", main= 'Función 2.3', type = 'l')
La funcion no presenta un punto definido cuando \(X=0\) por lo tanto el dominio de la funcion es \(x<0\) y \(x>0\)
-Punto 4 \[y=x^5-3x^4+x^2-x-5\]
ejr_2.4 = function(x){
for (i in -x:x) {
y = (i^5)-(3*(i^4))+(i^2)-i-5
print(y)
}
return(y)
}
ejr_2.4(20)
## [1] -3679585
## [1] -2866687
## [1] -2204159
## [1] -1670119
## [1] -1244917
## [1] -911015
## [1] -652867
## [1] -456799
## [1] -310889
## [1] -204847
## [1] -129895
## [1] -78647
## [1] -44989
## [1] -23959
## [1] -11627
## [1] -4975
## [1] -1777
## [1] -479
## [1] -79
## [1] -7
## [1] -5
## [1] -7
## [1] -19
## [1] 1
## [1] 263
## [1] 1265
## [1] 3913
## [1] 9641
## [1] 20531
## [1] 39433
## [1] 70085
## [1] 117233
## [1] 186751
## [1] 285761
## [1] 422753
## [1] 607705
## [1] 852203
## [1] 1169561
## [1] 1574941
## [1] 2085473
## [1] 2720375
## [1] 2720375
ejr_2.4 <- function(x){
y = (x^5)-(3*(x^4))+(x^2)-x-5
return(y)
}
#Evaluando cuando x valga de -10 a 10
x4 = seq(-20,20,1)
ej4 = ejr_2.4(x3); ej4
## [1] -3679585 -2866687 -2204159 -1670119 -1244917 -911015 -652867 -456799
## [9] -310889 -204847 -129895 -78647 -44989 -23959 -11627 -4975
## [17] -1777 -479 -79 -7 -5 -7 -19 1
## [25] 263 1265 3913 9641 20531 39433 70085 117233
## [33] 186751 285761 422753 607705 852203 1169561 1574941 2085473
## [41] 2720375
#Grafica
plot(x4,ej4, col="purple", main= 'Función 2.4', type = 'l')
La funcion no tiene puntos no definidos ni limitaciones de dominio.Por lo tanto, el dominio es \((-\infty<x<\infty)\) Actividad 3 -Punto 1 \[\sum_{k=0}^{\infty}\frac{8}{(4k+1)(4k+3)}=3.141592\]
ejr_3.1 <- function(k){
ks = seq(0,k)
valores = 8/((4*ks+1)*(4*ks+3))
suma_valores = sum(valores)
return(suma_valores)
}
#Evaluando cuando k=10
ejr_3.1(10)
## [1] 3.096162
#Evaluando cuando k=1000
ejr_3.1(1000)
## [1] 3.141093
#Evaluando cuando k=10000
ejr_3.1(10000)
## [1] 3.141543
#Evaluando cuando k=100000
ejr_3.1(100000)
## [1] 3.141588
#Valor de K cuando sumatoria converge a pi
ejr_3.1_2 <- function(k){
ki = 0
suma_valores = 0
while(suma_valores <= 3.141592){
valor_i = 8/((4*ki+1)*(4*ki+3))
suma_valores = suma_valores + valor_i
if (ki == k) break
ki = ki+1
}
return(list (ki = ki,
suma_valores))
}
#Para eliminar la notacion cientifica
options(scipen = 10)
#Evaluando la funcion
ejr_3.1_2(40000000)
## $ki
## [1] 765006
##
## [[2]]
## [1] 3.141592
Es necesario que k=765006 para que la sumatoria converga al número Pi.
-Punto 2 \[\sqrt{6\sum_{k=1}^{\infty}\frac{1}{k^2}}=3.141592\]
ejr_3.2 <- function(k){
ks_2 = seq(1,k)
valores_2 = 1/(ks_2^2)
suma_valores_2 = sum(valores_2)
total_valores_2= sqrt(6*suma_valores_2)
return(total_valores_2)
}
#Evaluando cuando k=10
ejr_3.2(10)
## [1] 3.049362
#Evaluando cuando k=1000
ejr_3.2(1000)
## [1] 3.140638
#Evaluando cuando k=10000
ejr_3.2(10000)
## [1] 3.141497
#Evaluando cuando k=100000
ejr_3.2(100000)
## [1] 3.141583
#Valor de K cuando sumatoria converge a pi
ejer3.2 <- function(k){
vec2 = 1
suma_valores_3.2 = 0
total_valores_3.2 =0
while (total_valores_3.2 <= 3.141592) {
valores_3.2= 1/(vec2^2)
suma_valores_3.2 = (suma_valores_3.2 + valores_3.2)
total_valores_3.2 = sqrt(6*suma_valores_3.2)
if (vec2 == k) break
vec2 = vec2 + 1
}
return(list( vec2 = vec2,
total_valores_3.2))
}
ejer3.2(1000000)
## $vec2
## [1] 1000000
##
## [[2]]
## [1] 3.141592
Es necesario que k=1000000 para que la sumatoria converga al número Pi.
Actividad 4 \[1+x+\frac{x^2}{2}+\frac{x^3}{3}+...+\frac{x^n}{n}\]
serie<- function(x,n){
if (all.equal(x,as.integer(x))==T){
print (1)
if (n>=0) {
for (i in seq(n)) {
se_i =(x^i)/i
print(se_i)
}}
else {print('No olvide (n) debe ser un entero positivo.')}}
else {print('No olvide (x) debe ser un número.')}
return(se_i)
}
#Evaluado con x=1
sx1=serie(1,20)
## [1] 1
## [1] 1
## [1] 0.5
## [1] 0.3333333
## [1] 0.25
## [1] 0.2
## [1] 0.1666667
## [1] 0.1428571
## [1] 0.125
## [1] 0.1111111
## [1] 0.1
## [1] 0.09090909
## [1] 0.08333333
## [1] 0.07692308
## [1] 0.07142857
## [1] 0.06666667
## [1] 0.0625
## [1] 0.05882353
## [1] 0.05555556
## [1] 0.05263158
## [1] 0.05
#Valor total de la serie
VT=sum(sx1)
Grafico
#Guardar los resultados uno a uno en vector
serie<- function(x,n){
vec_serie = NULL
if (all.equal(x,as.integer(x))==T){
print (1)
if (n>=0) {
for (i in seq(n)) {
se_i =(x^i)/i
vec_serie[i] = se_i
print(se_i)
}}
else {print('No olvide (n) debe ser un entero positivo.')}}
else {print('No olvide (x) debe ser un número.')}
return(vec_serie)
}
#Evaluando x=1
se = serie(1,20)
## [1] 1
## [1] 1
## [1] 0.5
## [1] 0.3333333
## [1] 0.25
## [1] 0.2
## [1] 0.1666667
## [1] 0.1428571
## [1] 0.125
## [1] 0.1111111
## [1] 0.1
## [1] 0.09090909
## [1] 0.08333333
## [1] 0.07692308
## [1] 0.07142857
## [1] 0.06666667
## [1] 0.0625
## [1] 0.05882353
## [1] 0.05555556
## [1] 0.05263158
## [1] 0.05
#Graficar
plot(se)
Actividad 5 -Creacion vector 1
x= seq(3,6,0.1)
#Creación del vector
V1 <- c(exp(x)*cos(x));V1
## [1] -19.884531 -22.178753 -24.490697 -26.773182 -28.969238 -31.011186
## [7] -32.819775 -34.303360 -35.357194 -35.862834 -35.687732 -34.685042
## [13] -32.693695 -29.538816 -25.032529 -18.975233 -11.157417 -1.362099
## [19] 10.632038 25.046705 42.099201 61.996630 84.929067 111.061586
## [25] 140.525075 173.405776 209.733494 249.468441 292.486707 338.564378
## [31] 387.360340
-Creacion vector 2
n= seq(1,25,1)
#Creación del vector
V2 <- c((2^n)/(n));V2
## [1] 2.000000 2.000000 2.666667 4.000000 6.400000
## [6] 10.666667 18.285714 32.000000 56.888889 102.400000
## [11] 186.181818 341.333333 630.153846 1170.285714 2184.533333
## [16] 4096.000000 7710.117647 14563.555556 27594.105263 52428.800000
## [21] 99864.380952 190650.181818 364722.086957 699050.666667 1342177.280000
-Creacion vector 3
V3 <-paste(c("Trat"),1:30);V3
## [1] "Trat 1" "Trat 2" "Trat 3" "Trat 4" "Trat 5" "Trat 6" "Trat 7"
## [8] "Trat 8" "Trat 9" "Trat 10" "Trat 11" "Trat 12" "Trat 13" "Trat 14"
## [15] "Trat 15" "Trat 16" "Trat 17" "Trat 18" "Trat 19" "Trat 20" "Trat 21"
## [22] "Trat 22" "Trat 23" "Trat 24" "Trat 25" "Trat 26" "Trat 27" "Trat 28"
## [29] "Trat 29" "Trat 30"
-Creacion vector 4
V4 <-paste(c("gen"),1:10);V4
## [1] "gen 1" "gen 2" "gen 3" "gen 4" "gen 5" "gen 6" "gen 7" "gen 8"
## [9] "gen 9" "gen 10"
-20 Vectores
V20 <-replicate(20,rnorm(40,3,0.3)); V20
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
## [1,] 2.635052 2.645473 3.182075 2.932799 3.355119 3.401295 2.829134 3.454680
## [2,] 2.917451 3.439988 3.318302 2.481566 3.315705 2.360127 2.896453 3.150656
## [3,] 2.569694 2.857330 2.408126 3.104824 3.019678 2.950995 2.917545 3.068340
## [4,] 3.148671 3.078827 3.340012 2.223576 3.203855 3.026785 3.462422 3.621604
## [5,] 3.494751 2.658379 3.248380 3.096074 3.665360 3.405206 3.025570 2.653789
## [6,] 2.568271 2.587031 3.194684 3.196018 2.983994 2.789435 3.198754 2.572005
## [7,] 3.122707 2.762531 3.545822 2.669499 3.021829 3.023623 2.779686 2.900534
## [8,] 2.980069 2.726811 2.313670 3.138905 3.002672 2.725923 2.494259 3.128393
## [9,] 3.280067 3.465185 2.666670 3.267057 2.874923 3.384927 3.634317 3.523099
## [10,] 3.041427 2.865556 2.589825 3.107745 2.779298 2.868028 2.873562 2.898441
## [11,] 3.393325 3.003147 2.871916 2.836661 3.116580 3.248014 2.783612 2.598556
## [12,] 3.260517 2.920416 3.144817 3.046475 2.765735 3.244007 2.672920 2.873947
## [13,] 3.077589 2.904005 3.229768 2.711284 2.644688 3.099984 2.956978 3.881577
## [14,] 3.373818 3.230147 2.663242 2.836244 3.651635 3.169821 2.533365 3.258262
## [15,] 2.564315 3.029866 3.357200 2.538611 3.340509 2.956286 3.849114 3.106936
## [16,] 2.900256 2.688250 3.053014 3.156085 2.599197 2.718457 2.631825 3.026566
## [17,] 3.199492 3.072763 2.869417 2.923999 2.883103 2.676790 2.833249 2.702189
## [18,] 2.877283 3.074217 3.008789 3.400116 3.048823 2.859286 3.207776 3.059579
## [19,] 2.906668 2.642167 2.303784 3.209129 2.920774 2.857142 3.168546 3.171830
## [20,] 2.901552 3.294780 3.386204 2.689602 3.081169 3.038882 2.897215 2.542166
## [21,] 3.056051 3.216991 2.592099 2.983690 3.415985 2.820950 2.826420 3.144910
## [22,] 2.527973 3.305203 3.137915 2.679924 3.410677 3.053063 2.626314 3.230413
## [23,] 3.107634 3.113823 2.635122 3.031528 3.099087 2.674677 2.711275 3.156752
## [24,] 2.941047 3.388959 3.006311 3.164935 2.577820 2.763316 3.088827 3.139844
## [25,] 2.331033 2.779850 2.447827 3.236916 2.391462 2.611833 2.405606 3.188159
## [26,] 2.702548 2.525679 2.689308 3.393952 2.776930 2.833900 2.724025 3.277492
## [27,] 2.599288 2.711983 2.631393 3.187572 2.634141 2.949497 3.569510 3.233469
## [28,] 2.607044 2.676222 3.018786 3.184950 3.044287 2.724786 3.593556 3.022091
## [29,] 3.300722 3.428330 3.282828 2.919947 3.189779 3.126034 3.298812 3.088423
## [30,] 2.848706 3.103992 3.623222 2.951278 2.934426 3.002025 3.075330 3.265601
## [31,] 3.237304 3.413004 3.384663 3.182561 3.317870 2.865367 2.810843 2.662292
## [32,] 2.512119 2.943459 3.045894 3.432325 2.685678 2.331841 2.517686 2.441820
## [33,] 2.995895 2.883036 3.092496 3.164993 2.817493 2.711877 2.910373 2.763901
## [34,] 3.445446 3.670125 3.011828 3.080452 2.838165 2.917748 3.078516 2.903892
## [35,] 3.240956 2.895495 3.832409 2.288070 3.134670 3.704660 3.272416 2.968570
## [36,] 3.201630 2.215799 2.456163 3.193780 3.120131 2.740049 2.803340 2.794089
## [37,] 3.446657 3.234982 3.166145 2.578784 2.281040 3.150303 2.594448 2.752832
## [38,] 2.544648 3.787470 2.601190 2.940825 2.931221 2.901131 3.515330 2.359320
## [39,] 3.192287 3.374880 2.904663 2.808643 3.153571 3.589229 2.959839 3.169790
## [40,] 3.257247 2.866023 2.881319 2.790069 3.402110 2.345434 2.723310 3.195949
## [,9] [,10] [,11] [,12] [,13] [,14] [,15] [,16]
## [1,] 2.451311 2.867072 2.523244 3.054965 3.205450 2.947022 2.604249 3.005106
## [2,] 3.336742 2.870292 2.650340 3.063345 3.153706 2.966745 2.672516 3.419277
## [3,] 3.179276 2.622397 2.896596 3.475339 3.582568 2.907063 2.889811 3.494252
## [4,] 2.631875 3.148779 3.065628 2.857494 3.275595 3.256032 2.979867 2.342133
## [5,] 3.046012 2.975468 2.955562 2.598939 2.712075 2.961802 3.136494 3.529209
## [6,] 3.320765 3.114755 2.913544 3.279155 3.283200 2.644275 3.091656 2.768307
## [7,] 3.842687 2.684836 3.157361 2.986400 3.025876 3.115888 3.183458 3.385753
## [8,] 3.081860 2.576261 3.035007 2.481848 3.357786 3.502120 3.728512 2.741742
## [9,] 2.724628 2.987025 3.336943 2.796065 2.544817 3.730409 3.221563 3.192360
## [10,] 2.994024 3.434334 2.930475 3.043439 3.368982 3.303021 3.158109 3.271580
## [11,] 3.592688 3.525575 2.942155 2.973850 2.882885 3.060753 3.135234 3.437014
## [12,] 3.108552 3.028586 3.005562 3.186498 3.271149 3.281153 3.249412 3.022254
## [13,] 2.650009 2.799138 3.425054 2.599597 3.383993 3.209644 2.904252 2.923151
## [14,] 2.816784 2.806268 3.340575 3.277483 3.069665 2.857880 3.171955 2.885357
## [15,] 2.547948 2.426955 2.997241 3.106573 2.343712 2.975411 3.161170 2.695633
## [16,] 3.312007 3.260108 2.866172 3.153428 3.274871 2.790923 3.342578 2.778361
## [17,] 2.625943 3.203759 2.508115 3.643312 3.387841 3.399540 2.837460 3.047807
## [18,] 2.690706 3.203456 3.343798 2.941344 2.888140 3.050565 3.111121 3.233414
## [19,] 3.261620 2.867111 2.828722 2.875744 2.924808 2.879709 3.051549 2.711991
## [20,] 3.247893 3.395551 3.121611 2.606077 2.890521 2.974040 2.955273 2.840967
## [21,] 2.923314 3.635400 3.845444 2.895860 3.546510 3.053166 2.981974 3.254346
## [22,] 3.462827 3.509073 2.914911 3.396392 2.834299 3.282856 3.209775 2.474324
## [23,] 3.594121 3.328190 3.015540 3.148171 3.154745 3.198352 3.373968 2.555565
## [24,] 3.209436 3.250759 2.826884 3.049046 2.947283 3.537198 2.728506 3.730996
## [25,] 3.323079 3.185062 2.820169 2.413123 2.917785 3.004188 2.915922 2.853044
## [26,] 2.747234 2.964964 3.378293 3.342158 3.077503 3.182610 3.108101 2.906232
## [27,] 2.804871 2.575776 2.492325 2.183990 2.666939 2.937026 2.848924 2.793476
## [28,] 2.874614 2.481537 2.923449 2.923940 3.346050 3.233450 3.270364 2.821004
## [29,] 3.170897 3.315737 2.601586 3.333852 3.015555 2.614703 3.375897 3.361549
## [30,] 2.752028 3.060550 2.820170 3.237284 3.590365 2.695036 2.707526 3.117072
## [31,] 2.429845 3.037971 3.072136 3.331347 2.994364 3.210834 2.789075 3.033487
## [32,] 2.753663 3.391290 2.989603 3.470589 3.000159 2.893568 3.431496 2.747943
## [33,] 2.818656 2.822353 2.891567 2.849462 2.859192 3.714233 2.907350 3.293927
## [34,] 2.397586 2.684778 2.892727 2.959062 3.213495 2.635912 3.635503 2.783447
## [35,] 2.878511 3.034696 3.255561 2.952556 3.442184 3.164607 3.024362 2.808940
## [36,] 2.732935 2.871419 2.734865 2.712063 3.193214 3.212587 3.182907 2.943907
## [37,] 3.175671 2.835244 3.380651 3.136054 3.109587 2.718157 2.732026 3.500552
## [38,] 3.080703 2.296433 3.349078 2.949560 2.936242 3.145520 2.864534 3.417705
## [39,] 2.955354 3.161573 3.259124 3.366086 2.583608 2.482105 2.587983 3.444030
## [40,] 2.689061 2.512156 2.963706 2.703974 3.319108 3.124492 3.232533 2.894007
## [,17] [,18] [,19] [,20]
## [1,] 2.924378 3.497429 3.243461 3.294688
## [2,] 3.374025 2.886684 3.509030 2.941881
## [3,] 2.952041 3.244458 2.943320 2.877590
## [4,] 3.112050 3.586442 2.813259 3.015790
## [5,] 2.599832 2.825695 2.829668 3.068764
## [6,] 2.923535 2.815276 2.895080 2.909078
## [7,] 3.209971 3.168369 3.632512 3.003199
## [8,] 2.798076 2.359684 3.144272 2.875877
## [9,] 3.182570 3.265669 2.763071 3.263357
## [10,] 3.029285 2.837229 2.608624 2.354444
## [11,] 2.552368 2.842324 3.414971 3.533867
## [12,] 3.206653 3.649915 3.395818 2.286178
## [13,] 2.593561 2.886133 2.405340 2.693451
## [14,] 3.034446 2.406400 3.117493 2.656699
## [15,] 3.332795 2.961173 2.800997 2.907898
## [16,] 3.023801 2.966616 3.067489 2.809793
## [17,] 3.154535 3.053860 2.887106 3.185796
## [18,] 2.284267 2.860592 2.804850 3.246417
## [19,] 2.624018 2.723161 2.833028 3.460103
## [20,] 3.145080 3.294837 2.739612 2.704497
## [21,] 3.302645 3.246860 2.603658 2.955418
## [22,] 2.456935 3.196783 2.577789 3.012112
## [23,] 3.070680 3.222149 3.243275 3.394739
## [24,] 2.976424 2.365407 3.040085 2.602461
## [25,] 3.048327 3.322269 3.390566 2.946573
## [26,] 2.955153 3.595926 3.200699 3.000978
## [27,] 3.180711 3.037424 3.310415 3.073354
## [28,] 3.020986 3.079688 2.948604 3.044120
## [29,] 2.699211 3.168994 2.924378 2.442568
## [30,] 3.362724 2.884926 3.035964 2.792006
## [31,] 2.487067 2.907526 3.315467 2.988403
## [32,] 2.789205 2.976171 3.233222 3.275508
## [33,] 2.837724 2.948134 3.257875 2.701274
## [34,] 3.147141 3.345733 2.817041 2.699292
## [35,] 3.224281 2.998191 2.909284 2.924004
## [36,] 3.460707 2.969656 3.531992 3.109047
## [37,] 3.148483 3.425738 2.874845 3.085664
## [38,] 2.856658 3.211035 2.645880 3.196125
## [39,] 2.967036 2.961480 2.827503 3.232796
## [40,] 2.985525 3.397229 2.813677 2.819899
-Creacion vector con las medias de cada columna
Vm <- colMeans(V20);Vm
## [1] 2.982730 3.012054 2.978432 2.969037 3.010780 2.940568 2.968802 3.023819
## [9] 2.980943 2.993817 3.006787 3.008887 3.089396 3.071365 3.062374 3.036531
## [17] 2.975873 3.059832 3.008780 2.959643
-Crecion vector con las desviaciones estandar
Vde <- apply (V20[,1:20],2, sd);Vde
## [1] 0.3125694 0.3374619 0.3719858 0.2895808 0.3129881 0.3065524 0.3467850
## [8] 0.3207505 0.3428746 0.3280745 0.2828646 0.3151447 0.2890157 0.2846915
## [15] 0.2622809 0.3270006 0.2752655 0.3079869 0.2933541 0.2813013
-Creacion vector con los coeficientes de variacion
Vcv <- Vde/Vm ;Vcv
## [1] 0.10479305 0.11203712 0.12489314 0.09753359 0.10395584 0.10424937
## [7] 0.11680973 0.10607464 0.11502217 0.10958403 0.09407536 0.10473797
## [13] 0.09355089 0.09269218 0.08564627 0.10768888 0.09249907 0.10065484
## [19] 0.09749932 0.09504568
Actividad 6 \[\begin{equation} \begin{bmatrix} 1 & 1 & 3\\ 2 & 9 & 3\\ -4 & 5 & 1 \end{bmatrix} \end{equation}\] -Creancion de la matriz
#vectores para las columnas de la matriz
c1 <- c(1,2,-4)
c2 <- c(1,9,5)
c3 <- c(3,3,1)
#creando matriz a partir de vectores
MatrizA <- matrix(c(c1,c2,c3), nrow = 3, ncol = 3);MatrizA
## [,1] [,2] [,3]
## [1,] 1 1 3
## [2,] 2 9 3
## [3,] -4 5 1
-Matriz transpuesta
Mt <- t(MatrizA); Mt
## [,1] [,2] [,3]
## [1,] 1 2 -4
## [2,] 1 9 5
## [3,] 3 3 1
-Inversa de la matriz
library(matlib)
inv(MatrizA)
## [,1] [,2] [,3]
## [1,] -0.05084746 0.11864407 -0.20338983
## [2,] -0.11864407 0.11016949 0.02542373
## [3,] 0.38983051 -0.07627119 0.05932203
#Comprobando
(1/det(MatrizA))*adjoint(MatrizA)
## [,1] [,2] [,3]
## [1,] -0.05084746 0.11864407 -0.20338983
## [2,] -0.11864407 0.11016949 0.02542373
## [3,] 0.38983051 -0.07627119 0.05932203
-Determinante
det(MatrizA)
## [1] 118
-Traza
#Suma de los componentes de la diagonal principal
Tr=(MatrizA [1,1]+MatrizA [2,2]+MatrizA [3,3]);Tr
## [1] 11
-Rango de la matriz
library(Matrix)
rankMatrix(MatrizA)
## [1] 3
## attr(,"method")
## [1] "tolNorm2"
## attr(,"useGrad")
## [1] FALSE
## attr(,"tol")
## [1] 6.661338e-16
Otra forma para hallar el rango de la matriz
qr(MatrizA)$rank
## [1] 3
-Dimension
dim(MatrizA)
## [1] 3 3
-Multiplicacion (*)
Mn= MatrizA*MatrizA;Mn
## [,1] [,2] [,3]
## [1,] 1 1 9
## [2,] 4 81 9
## [3,] 16 25 1
-Multiplicacion de forma usual (% ∗ %)
Ml=MatrizA%∗%MatrizA;Ml
## [,1] [,2] [,3]
## [1,] -9 25 9
## [2,] 8 98 36
## [3,] 2 46 4
-Calculando \(A^3\)
#Forma 1
A= MatrizA*MatrizA*MatrizA;A
## [,1] [,2] [,3]
## [1,] 1 1 27
## [2,] 8 729 27
## [3,] -64 125 1
#Forma 2
A2= MatrizA%*%MatrizA%*%MatrizA; A2
## [,1] [,2] [,3]
## [1,] 5 261 57
## [2,] 60 1070 354
## [3,] 78 436 148
Se puede evidenciar que los valores son distintos debido a que en la forma 1 la elevacion se hace al multiplicar elemento a elemento mientras que en la forma 2 el comando aplica la multiplicacion de matrices siguiendo las reglas establecidas -Creacion matriz B y aplicacion de funciones \[\begin{equation} \begin{bmatrix} 0 & 1 & 0 & 0 & 0 & 0\\ 1 & 0 & 1 & 0 & 0 & 0\\ 0 & 1 & 0 & 1 & 0 & 0\\ 0 & 0 & 1 & 0 & 1 & 0\\ 0 & 0 & 0 & 1 & 0 & 1\\ 0 & 0 & 0 & 0 & 1 & 0 \end{bmatrix} \end{equation}\]
#vectores para las columnas de la matriz
c1 <- c(0,1,0,0,0,0)
c2 <- c(1,0,1,0,0,0)
c3 <- c(0,1,0,1,0,0)
c4 <- c(0,0,1,0,1,0)
c5 <- c(0,0,0,1,0,1)
c6 <- c(0,0,0,0,1,0)
#creando matriz a partir de vectores
B<- matrix(c(c1,c2,c3,c4,c5,c6), nrow = 6, ncol = 6);B
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0 1 0 0 0 0
## [2,] 1 0 1 0 0 0
## [3,] 0 1 0 1 0 0
## [4,] 0 0 1 0 1 0
## [5,] 0 0 0 1 0 1
## [6,] 0 0 0 0 1 0
row(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 1 1 1 1 1 1
## [2,] 2 2 2 2 2 2
## [3,] 3 3 3 3 3 3
## [4,] 4 4 4 4 4 4
## [5,] 5 5 5 5 5 5
## [6,] 6 6 6 6 6 6
col(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 1 2 3 4 5 6
## [2,] 1 2 3 4 5 6
## [3,] 1 2 3 4 5 6
## [4,] 1 2 3 4 5 6
## [5,] 1 2 3 4 5 6
## [6,] 1 2 3 4 5 6
-Se evidencia el numero de filas que presenta la matriz
nrow(B)
## [1] 6
-Se evidencia el numero de filas que presenta la matriz tratando un vector como una matriz de 1 columna
NROW(B)
## [1] 6
-Se evidencia el numero de columnas que presenta la matriz tratando un vector como una matriz de 1 columna
NCOL(B)
## [1] 6
-Se evidencia el numero de columnas que presenta la matriz
ncol(B)
## [1] 6
-Indica que no se detectaron valores NA en la matriz
anyNA(B)
## [1] FALSE
as.matrix(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0 1 0 0 0 0
## [2,] 1 0 1 0 0 0
## [3,] 0 1 0 1 0 0
## [4,] 0 0 1 0 1 0
## [5,] 0 0 0 1 0 1
## [6,] 0 0 0 0 1 0
-Se evidencia un objeto sin formato
as.raw(B)
## [1] 00 01 00 00 00 00 01 00 01 00 00 00 00 01 00 01 00 00 00 00 01 00 01 00 00
## [26] 00 00 01 00 01 00 00 00 00 01 00
colnames(B)
## NULL
colSums(B)
## [1] 1 2 2 2 2 1
-Se evidencia un vector con cuyos elementos son los maximos acumulativos de la matriz
cummax(B)
## [1] 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
-Se evidencia un vector con cuyos elementos son los minimos acumulativos de la matriz
cummin(B)
## [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-Se evidencia un vector con cuyos elementos son los productos acumulativos de los elementos de la matriz
cumprod(B)
## [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-Se evidencia un vector con cuyos elementos son las sumas acumulativas de los elementos de la matriz
cumsum(B)
## [1] 0 1 1 1 1 1 2 2 3 3 3 3 3 4 4 5 5 5 5 5 6 6 7 7 7
## [26] 7 7 8 8 9 9 9 9 9 10 10
-Se evidencia el determinante de la matriz
det(B)
## [1] -1
-Se evidencia un vector que contiene los elementos de la diagonal principal
diag(B)
## [1] 0 0 0 0 0 0
diff(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 1 -1 1 0 0 0
## [2,] -1 1 -1 1 0 0
## [3,] 0 -1 1 -1 1 0
## [4,] 0 0 -1 1 -1 1
## [5,] 0 0 0 -1 1 -1
dimnames(B)
## NULL
-Se evidencia el valor exponencial de cada elemento de la matriz
exp(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 1.000000 2.718282 1.000000 1.000000 1.000000 1.000000
## [2,] 2.718282 1.000000 2.718282 1.000000 1.000000 1.000000
## [3,] 1.000000 2.718282 1.000000 2.718282 1.000000 1.000000
## [4,] 1.000000 1.000000 2.718282 1.000000 2.718282 1.000000
## [5,] 1.000000 1.000000 1.000000 2.718282 1.000000 2.718282
## [6,] 1.000000 1.000000 1.000000 1.000000 2.718282 1.000000
-Indica que B esta en forma de matriz
is.matrix(B)
## [1] TRUE
-Indica que la matriz no esta en orden creciente
is.unsorted(B)
## [1] TRUE
-Indica que B no es un vector
is.vector(B)
## [1] FALSE
-Indica que la matriz es simetrica
isSymmetric(B)
## [1] TRUE
-Se evidencia la longitud de la matriz
length(B)
## [1] 36
-Se evidencia la longitud de cada elemento en la matriz
lengths(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 1 1 1 1 1 1
## [2,] 1 1 1 1 1 1
## [3,] 1 1 1 1 1 1
## [4,] 1 1 1 1 1 1
## [5,] 1 1 1 1 1 1
## [6,] 1 1 1 1 1 1
-Se evidencia el logaritmo de cada elemento de la matriz
log10(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] -Inf 0 -Inf -Inf -Inf -Inf
## [2,] 0 -Inf 0 -Inf -Inf -Inf
## [3,] -Inf 0 -Inf 0 -Inf -Inf
## [4,] -Inf -Inf 0 -Inf 0 -Inf
## [5,] -Inf -Inf -Inf 0 -Inf 0
## [6,] -Inf -Inf -Inf -Inf 0 -Inf
-Se evidencia una matriz de valores logicos, donde los elementos sobre la diagonal son falsos y los elementos debajo de la diagonal son verdaderos
lower.tri(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] FALSE FALSE FALSE FALSE FALSE FALSE
## [2,] TRUE FALSE FALSE FALSE FALSE FALSE
## [3,] TRUE TRUE FALSE FALSE FALSE FALSE
## [4,] TRUE TRUE TRUE FALSE FALSE FALSE
## [5,] TRUE TRUE TRUE TRUE FALSE FALSE
## [6,] TRUE TRUE TRUE TRUE TRUE FALSE
-Se evidencia la suma de los elementos de la matriz
margin.table(B)
## [1] 10
-Se evidencia la suma de los elementos de la matriz
marginSums(B)
## [1] 10
max(B)
## [1] 1
-Se evidencia la posición donde se encuentra el maximo para cada fila de la matriz
max.col(B)
## [1] 2 1 2 3 4 5
mean(B)
## [1] 0.2777778
min(B)
## [1] 0
-Se evidencia el tamaño de cada elemento
nchar(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 1 1 1 1 1 1
## [2,] 1 1 1 1 1 1
## [3,] 1 1 1 1 1 1
## [4,] 1 1 1 1 1 1
## [5,] 1 1 1 1 1 1
## [6,] 1 1 1 1 1 1
-Se evidencia la norma matricial
norm(B)
## [1] 2
-Se evidencia la permutacion del orden de los elementos de la matriz
order(B)
## [1] 1 3 4 5 6 8 10 11 12 13 15 17 18 19 20 22 24 25 26 27 29 31 32 33 34
## [26] 36 2 7 9 14 16 21 23 28 30 35
-Se evidencia la grafica de la matriz
plot(B)
-Se evidencia los máximos paralelos de los valores de la matriz
pmax(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0 1 0 0 0 0
## [2,] 1 0 1 0 0 0
## [3,] 0 1 0 1 0 0
## [4,] 0 0 1 0 1 0
## [5,] 0 0 0 1 0 1
## [6,] 0 0 0 0 1 0
-Se evidencia los mínimos paralelos de los valores de la matriz
pmin(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0 1 0 0 0 0
## [2,] 1 0 1 0 0 0
## [3,] 0 1 0 1 0 0
## [4,] 0 0 1 0 1 0
## [5,] 0 0 0 1 0 1
## [6,] 0 0 0 0 1 0
-Se evidencia un vector que contiene el minimo y el maximo de la matriz
range(B)
## [1] 0 1
rank(B)
## [1] 13.5 31.5 13.5 13.5 13.5 13.5 31.5 13.5 31.5 13.5 13.5 13.5 13.5 31.5 13.5
## [16] 31.5 13.5 13.5 13.5 13.5 31.5 13.5 31.5 13.5 13.5 13.5 13.5 31.5 13.5 31.5
## [31] 13.5 13.5 13.5 13.5 31.5 13.5
-Crea un vector sin formato de la longitud especificada que corresponde a la dimension de la matriz B
dim(B)
## [1] 6 6
raw(6)
## [1] 00 00 00 00 00 00
-Se evidencia la inversa de la matriz
solve(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0 1 0 -1 0 1
## [2,] 1 0 0 0 0 0
## [3,] 0 0 0 1 0 -1
## [4,] -1 0 1 0 0 0
## [5,] 0 0 0 0 0 1
## [6,] 1 0 -1 0 1 0
-Se evidencian elementos ordenados de manera ascendente
sort(B)
## [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
-Se evidencia la suma de todos los valores
sum(B)
## [1] 10
-Se evidencia la matriz transpuesta
t(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0 1 0 0 0 0
## [2,] 1 0 1 0 0 0
## [3,] 0 1 0 1 0 0
## [4,] 0 0 1 0 1 0
## [5,] 0 0 0 1 0 1
## [6,] 0 0 0 0 1 0
-Se evidencia una matriz de valores logicos, donde los elementos sobre la diagonal son verdaderos y los elementos debajo de la diagonal son falsos
upper.tri(B)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] FALSE TRUE TRUE TRUE TRUE TRUE
## [2,] FALSE FALSE TRUE TRUE TRUE TRUE
## [3,] FALSE FALSE FALSE TRUE TRUE TRUE
## [4,] FALSE FALSE FALSE FALSE TRUE TRUE
## [5,] FALSE FALSE FALSE FALSE FALSE TRUE
## [6,] FALSE FALSE FALSE FALSE FALSE FALSE
-Determina la posicion del valor maximo, en caso de haber mas de uno imprime la primera posicion
which.max(B)
## [1] 2
Actividad 7 \[AGTCACAATGGAATAGGCCAAGCGATTGCAGGGTAGCCAGCCA\]
library(stringr)
gen=c("AGTCACAATGGAATAGGCCAAGCGATTGCAGGGTAGCCAGCCA")
cgen <- function(x) {
tamaño = str_length(x)
print(paste("El total de bases es:", tamaño))
numero_bases= nchar(x)
bases=str_sub(x,1:tamaño,1:tamaño)
nb=table(bases)
print(paste("El numero por bases por tipo es:"))
print(nb)
posicionG=str_locate_all(x,"G")
print("La posicion donde aparece 'G':")
print(posicionG)
parGA=str_count(gen,"GA")
print(paste("Las veces que aparece el par 'GA' es:", parGA))
cA=str_view_all(gen,"AA+")
print(cA)
cC=str_view_all(gen,"CC+")
print(cC)
cG=str_view_all(gen,"GG+")
print(cG)
cT=str_view_all(gen,"TT+")
print(cT)
cl=c("GGG")
tcl = str_length(cl)
print(paste("El tamaño de la cadena mas larga por base:", tcl))
}
cgen(gen)
## [1] "El total de bases es: 43"
## [1] "El numero por bases por tipo es:"
## bases
## A C G T
## 14 10 13 6
## [1] "La posicion donde aparece 'G':"
## [[1]]
## start end
## [1,] 2 2
## [2,] 10 10
## [3,] 11 11
## [4,] 16 16
## [5,] 17 17
## [6,] 22 22
## [7,] 24 24
## [8,] 28 28
## [9,] 31 31
## [10,] 32 32
## [11,] 33 33
## [12,] 36 36
## [13,] 40 40
##
## [1] "Las veces que aparece el par 'GA' es: 2"
## [1] "El tamaño de la cadena mas larga por base: 3"
-Tamaño de la cadena mas larga por base Actividad 8 \[N=N_0{(1/2)}^{t}\] \[N=500 \mu C_i{(1/2)}^{t}\]
Decaimiento <- function(t){
t1=seq(0,64,8)
N_0=500
N=N_0*(1/2)^t1
for (i in seq(0,64,8)){
N1=N_0*((1/2)^i)
print(N1)}
datos <- data.frame(t1, N)
require(ggplot2)
grafica <- ggplot(datos, aes(x = t1, y = N)) + geom_point(shape=23, fill="blue", color="darkred", size=2)
t=log(5)/log(2)
N_=100
dt <- data.frame (t,N_)
print(dt)
return(list(datos,grafica))
}
Decaimiento(64)
## [1] 500
## [1] 1.953125
## [1] 0.007629395
## [1] 0.00002980232
## [1] 0.0000001164153
## [1] 0.0000000004547474
## [1] 0.000000000001776357
## [1] 6.938894e-15
## [1] 2.710505e-17
## Loading required package: ggplot2
## t N_
## 1 2.321928 100
## [[1]]
## t1 N
## 1 0 5.000000e+02
## 2 8 1.953125e+00
## 3 16 7.629395e-03
## 4 24 2.980232e-05
## 5 32 1.164153e-07
## 6 40 4.547474e-10
## 7 48 1.776357e-12
## 8 56 6.938894e-15
## 9 64 2.710505e-17
##
## [[2]]
Actividad 9 \[Datos~pH= 6.12,5.13,5.84,6.53,6.12,6.30,6.04,5.79,5.94,6.03,6.12 \]
pH<- c(6.12,5.13,5.84,6.53,6.12,6.30,6.04,5.79,5.94,6.03,6.12)
-Grafico con linea solida
grafica= plot(pH, col= "red",type = "l", main ="pH del cultivo")
-Grilla de color violeta
grafica= plot(pH, col= "red",type = "l", main ="pH del cultivo")
grid(grafica,col= "violet")
-Tramo de mayor pendiente
y=0
y2=0
p=0
cambio <- for (i in 0:10) {
p=(pH[i+1]-pH[i])/((i+1)-i)
if(i>1){
y2=p[1]
if (y < y2){
y=y2
x1=i
x2=i+1
}
}
}
print("la mayor pendiente es:")
## [1] "la mayor pendiente es:"
print(y)
## [1] 0.71
print("la mayor pendiente ocurren entre:")
## [1] "la mayor pendiente ocurren entre:"
print(x1)
## [1] 2
print(x2)
## [1] 3
-Tramo de mayor pendiente de color diferente
grafica= plot(pH, col= "red",type = "l", main ="pH del cultivo")
grid(grafica,col= "violet")
segments(x0 = 2,y0 =5.13,x1 = 3,y1 = 5.84,col = "blue")
-Pendiente expresada en grados
pendiente=(5.84-5.13)/(3-2)
pgrados=atan(pendiente);pgrados
## [1] 0.6174059
-Señalando pendiente en el grafico
grafica= plot(pH, col= "red",type = "l", main ="pH del cultivo")
grid(grafica,col= "violet")
segments(x0 = 2,y0 =5.13,x1 = 3,y1 = 5.84,col = "blue")
text(x=3.8,y=5.5,"θ=0.6174")
Actividad 10 \[Temperatura=distribución~normal(n,25,2)\]
Temperatura <- function(n){
t=rnorm(n,25,2)
mt=mean(t)
med=median(t)
medtrun= mean(t,trim = 0.05)
Q1=quantile(t, 0.25)
Q3=quantile(t, 0.75)
P10=quantile(t, 0.10)
P90=quantile(t, 0.90)
ddm=100*sum(t>(mt-2*(sd(t))) & t<(mt+2*(sd(t))))/length(t)
ddmed=100*sum(t>(med-2*(sd(t))) & t<(med+2*(sd(t))))/length(t)
return(list(mt,med,medtrun,Q1,Q3,P10,P90,ddm,ddmed))
}
#Evaluando cuando n=10
Temperatura(10)
## [[1]]
## [1] 25.14589
##
## [[2]]
## [1] 25.22863
##
## [[3]]
## [1] 25.14589
##
## [[4]]
## 25%
## 24.62619
##
## [[5]]
## 75%
## 26.89466
##
## [[6]]
## 10%
## 22.43553
##
## [[7]]
## 90%
## 27.40751
##
## [[8]]
## [1] 90
##
## [[9]]
## [1] 90
Actividad 11 \[Temperatura=distribución~uniforme (n,18,24)\]
Temperatura2 <- function(n){
t2=runif(n,25,2)
mt2=mean(t2)
med2=median(t2)
medtrun2= mean(t2,trim = 0.05)
Q1_2=quantile(t2, 0.25)
Q3_2=quantile(t2, 0.75)
P10_2=quantile(t2, 0.10)
P90_2=quantile(t2, 0.90)
dvt2=sd(t2)
ddm2=100*sum(t2>(mt2-2*dvt2) & t2<(mt2+2*dvt2))/length(t2)
ddmed2=100*sum(t2>(med2-2*dvt2) & t2<(med2+2*dvt2))/length(t2)
cvt=(dvt2/mt2)
return(list(mt2,med2,medtrun2,Q1_2,Q3_2,P10_2,P90_2,ddm2,ddmed2,cvt))
}
#Evaluando cuando n=10
Temperatura(10)
## [[1]]
## [1] 25.51211
##
## [[2]]
## [1] 26.27683
##
## [[3]]
## [1] 25.51211
##
## [[4]]
## 25%
## 23.72057
##
## [[5]]
## 75%
## 26.92101
##
## [[6]]
## 10%
## 22.08094
##
## [[7]]
## 90%
## 27.44993
##
## [[8]]
## [1] 100
##
## [[9]]
## [1] 100
Actividad 12 \[Precipitación=100*rbeta(20,0.8,0.5)\]
p=rbeta(30,0.8,0.5)
pp=p*100;pp
## [1] 44.6083638 80.8535236 37.8498896 53.4319402 36.6007872 0.5656679
## [7] 60.1654423 1.2845761 80.3374840 63.5846469 2.3153533 35.2390899
## [13] 61.1079467 96.7532932 9.9985755 40.5784648 12.6613378 87.9051287
## [19] 35.7028606 4.1401801 27.3066965 58.1508685 32.4350971 27.1460167
## [25] 8.7826795 39.6655674 17.1334500 51.5136068 94.3655214 17.6791213
-Media aritmetica
mp=mean(pp);mp
## [1] 40.66211
-Porcentaje de datos que cae a dos desviaciones estandar de la media
Datos=100*sum(pp>(mp-2*(sd(pp))) & pp<(mp+2*(sd(pp))))/length(pp);Datos
## [1] 100
-Suma acumulada de la \(pp\)
sa=cumsum(pp);sa
## [1] 44.60836 125.46189 163.31178 216.74372 253.34450 253.91017
## [7] 314.07561 315.36019 395.69767 459.28232 461.59768 496.83677
## [13] 557.94471 654.69801 664.69658 705.27505 717.93638 805.84151
## [19] 841.54437 845.68455 872.99125 931.14212 963.57721 990.72323
## [25] 999.50591 1039.17148 1056.30493 1107.81853 1202.18406 1219.86318
-Dia del mes que cae el maximo
#Maximo
max(pp)
## [1] 96.75329
#Dia en que cae el maximo
which.max(pp)
## [1] 14
-Dia del mes que cae el mınimo
#Mimimo
min(pp)
## [1] 0.5656679
#Dia en que cae el minimo
which.min(pp)
## [1] 6
-En que par de dias sucesivos ocurrio el maximo cambio de \(pp\)
#Cambio entre dias sucesivos
valor=0
valor2=0
d=0
cambio <- for (i in 0:29) {
d=pp[i+1]-pp[i]
if(i>1){
valor2=d[1]
if (valor < valor2){
valor=valor2
dia1=i
dia2=i+1
}
}
}
print("el valor maximo es:")
## [1] "el valor maximo es:"
print(valor)
## [1] 79.05291
print("la diferencia maxima se dio entre los dias:")
## [1] "la diferencia maxima se dio entre los dias:"
print(dia1)
## [1] 8
print(dia2)
## [1] 9
CV=sd(pp)/mean(pp);CV
## [1] 0.7026177
Actividad 13 \[Vector~1 < −c(1, 2, 5, 9, 11)\] \[Vector~2 < −c(2, 5, 1, 0, 23)\]
x <−c(1,2,5,9,11);x
## [1] 1 2 5 9 11
y <−c(2,5,1,0,23);y
## [1] 2 5 1 0 23
intersect(x,y)
## [1] 1 2 5
-Diferencia de \(x\) con \(y\) y la de \(y\) con \(x\)
D1=setdiff(x,y);D1
## [1] 9 11
D2=setdiff(y,x);D2
## [1] 0 23
-Union de \(x\) con \(y\)
U=union(x,y);U
## [1] 1 2 5 9 11 0 23
Actividad 14 Datos de temperatura diaria
td = rbeta(30,2,1) *25;td
## [1] 14.572220 11.697032 7.131777 7.637141 21.551882 22.451183 23.501262
## [8] 21.677465 16.908373 11.221731 24.976577 24.114780 17.935523 20.809983
## [15] 9.011822 21.369180 16.134225 9.742570 17.605874 20.319439 6.570613
## [22] 11.313602 21.575683 19.815231 23.202702 9.711660 15.809703 11.833920
## [29] 19.776978 15.246325
Se evidencian los datos de temperatura diaria mayores a 20
td[td>20]
## [1] 21.55188 22.45118 23.50126 21.67747 24.97658 24.11478 20.80998 21.36918
## [9] 20.31944 21.57568 23.20270
Se evidencian la media de los datos de temperatura diaria que son mayores o iguales a 4
mean(td[td>=4])
## [1] 16.50755
Se evidencian que ningun dato de temperatura diaria es igual a 1 o 0
td[td==0|td==1]
## numeric(0)
Se evidencian que los datos de temperatura diaria no estan entre 0 y 0.06
td[td%in%c(0,0.6)]
## numeric(0)
Actividad 15- Probabilidad \[P(A)=\frac{Nº~de~casos~favorables}{Nº~de~casos~posibles}\] Se extrae una carta al azar de una baraja de 52 cartas. - Probabilidad de que la carta extraida sea un as
p_as= 4/52; p_as
## [1] 0.07692308
p_p= 1/4;p_p
## [1] 0.25
Se lanza una moneda sin sesgo dos veces. -Probabilidad de obtener exactamente una cara
p_c=2/4;p_c
## [1] 0.5
-Probabilidad de obtener a lo sumo una cara
p_sc=3/4;p_sc
## [1] 0.75
-Probabilidad de obtener al menos una cara
p_ac=3/4;p_ac
## [1] 0.75
-Probabilidad de obtener la misma cara en ambas monedas
p_cc=1/4;p_cc
## [1] 0.25