1. Función que calcule la correlación entre datos de 2 variables, tomando pares de datos de 5 en 5:
set.seed(1073173761)

rto<-sort(rnorm(100,3,0.3));rto
##   [1] 2.348633 2.353273 2.475000 2.508870 2.522711 2.530918 2.556943
##   [8] 2.586235 2.642035 2.663425 2.673727 2.693504 2.716741 2.740925
##  [15] 2.741268 2.766055 2.766865 2.770296 2.775592 2.781010 2.800399
##  [22] 2.804364 2.818355 2.821829 2.823451 2.832827 2.838766 2.840176
##  [29] 2.844173 2.855041 2.869986 2.874583 2.879147 2.882046 2.895974
##  [36] 2.896589 2.896815 2.912290 2.923007 2.926278 2.927783 2.930755
##  [43] 2.934750 2.937004 2.961554 2.964000 2.982638 2.989964 2.995799
##  [50] 3.005806 3.005986 3.007062 3.011645 3.048385 3.051351 3.062375
##  [57] 3.076951 3.095263 3.122475 3.123289 3.123897 3.131255 3.132043
##  [64] 3.158368 3.166012 3.173739 3.173876 3.177732 3.183609 3.189328
##  [71] 3.189728 3.195316 3.200978 3.203035 3.213434 3.218303 3.229473
##  [78] 3.241144 3.243178 3.263126 3.268292 3.283727 3.291010 3.291047
##  [85] 3.291822 3.303307 3.330631 3.331872 3.350537 3.358078 3.360566
##  [92] 3.379811 3.393486 3.455493 3.559567 3.563162 3.580947 3.584912
##  [99] 3.622577 3.722538
ge<-sort(runif(100,1.01,1.15),decreasing = T);ge
##   [1] 1.149558 1.146908 1.145880 1.142346 1.141172 1.138882 1.138719
##   [8] 1.138114 1.137531 1.137029 1.135979 1.135006 1.133995 1.133889
##  [15] 1.133059 1.128676 1.127636 1.127205 1.124807 1.124566 1.123311
##  [22] 1.121949 1.121942 1.121067 1.120136 1.119127 1.118984 1.117524
##  [29] 1.114279 1.113532 1.113293 1.112716 1.111638 1.109324 1.109043
##  [36] 1.108110 1.107911 1.107667 1.107383 1.105091 1.104952 1.104756
##  [43] 1.104080 1.097543 1.097514 1.094881 1.094223 1.094181 1.093903
##  [50] 1.091216 1.090776 1.089906 1.089278 1.088355 1.088267 1.086925
##  [57] 1.084494 1.082245 1.081651 1.080072 1.079567 1.078481 1.075569
##  [64] 1.072936 1.072520 1.071123 1.069499 1.067573 1.066350 1.066312
##  [71] 1.063349 1.062567 1.062425 1.059102 1.056814 1.056128 1.054704
##  [78] 1.051493 1.048959 1.045795 1.043107 1.043027 1.042948 1.041640
##  [85] 1.041318 1.037537 1.037413 1.037237 1.036725 1.035186 1.034545
##  [92] 1.033577 1.027989 1.023398 1.022826 1.021198 1.020735 1.017855
##  [99] 1.016372 1.012426
correlacion<-function(x,y,n){
  for(i in seq(n,100,5)){
  R<-print(cor(x[1:i],y[1:i],method = "pearson"))}
  return(R)

} 

# n=tama昼㸱o del intervalo de datos a correlacionar (5 en 5 para este ejercicio)
# x,y= vectores de las variables a correlacionar

correlacion(rto,ge,5) 
## [1] -0.9089192
## [1] -0.9436488
## [1] -0.9714022
## [1] -0.9470547
## [1] -0.9462732
## [1] -0.9392105
## [1] -0.9384347
## [1] -0.9421628
## [1] -0.9408898
## [1] -0.9425271
## [1] -0.9482059
## [1] -0.9578243
## [1] -0.9646082
## [1] -0.9685916
## [1] -0.9693785
## [1] -0.9689948
## [1] -0.9695724
## [1] -0.97234
## [1] -0.9761054
## [1] -0.9788642
## [1] -0.9788642
  1. Función que calcule la media de un conjunto de dato, pero que lo haga quitando un dato cada vez. Para este ejercicio se tienen 50 datos de precios semanales de un producto, con una media de 2500 y una desviación estándar de 300.
weekly_price<-rnorm(50,2500,300)

Media_weekly_prices<-function(v,t){
  medias<-NULL
  for(i in 1:t){
  f<-mean(v[-i])
  medias[i]<-f
  }
  return(medias)
  } ###v=data.frame  t=tama昼㸱o del vector

Media_weekly_prices(weekly_price,length(weekly_price))
##  [1] 2539.920 2541.486 2547.263 2558.253 2535.906 2532.900 2552.435
##  [8] 2540.583 2558.170 2537.302 2538.094 2550.299 2551.636 2552.635
## [15] 2538.838 2542.521 2545.842 2548.660 2549.260 2552.427 2543.916
## [22] 2534.366 2540.409 2539.484 2529.760 2551.562 2550.661 2546.253
## [29] 2545.682 2541.825 2539.981 2544.724 2552.679 2544.247 2541.684
## [36] 2558.537 2543.240 2546.840 2530.433 2553.097 2539.987 2541.171
## [43] 2541.199 2539.071 2537.835 2540.203 2549.086 2548.681 2545.142
## [50] 2545.370
  1. Una función que tome muestras de tamaño 5 del conjunto de datos anterior, replique el proceso 200 veces y sacar la desviación estándar de esos 200 datos de media.
set.seed(1073173761)

bootstrap<-function(v,size,rep){
  m<-replicate(rep,{mean(sample(v,size))})
  sdm<-sd(m)
  return(sdm)
} ### v= Vector  size= Tama昼㸱o de la muestra replica rep= N昼㹡mero de r攼㸹plicas

medias<-bootstrap(weekly_price,5,200);medias
## [1] 140.2798