Hola, buen día.
Tengo una pequeña duda: deseo hacer una función que genere nuevos valores, cambiando ciertos caracteres de la misma; es decir, en el siguiente código:
library(combinat)
hoteles=c("A","B","C","D","E")
choose(5,3)
muestrasMAS=t(as.matrix(combn(hoteles,3)))
dim(muestrasMAS)
muestrasMAS
probmuestra<-c(6/90,7/90,8/90,8/90,9/90,10/90,9/90,10/90,11/90,12/90)
I(muestrasMAS=="A")
IA=rowSums(I(muestrasMAS=="A"))
IA
IB=rowSums(I(muestrasMAS=="B"))
IC=rowSums(I(muestrasMAS=="C"))
ID=rowSums(I(muestrasMAS=="D"))
IE=rowSums(I(muestrasMAS=="E"))
muestrasMAS=data.frame(muestrasMAS,probmuestra,IA,IB,IC,ID,IE)
muestrasMAS
muestrasMAS$ns=rowSums(muestrasMAS[,5:9])
muestrasMAS
attach(muestrasMAS)
piA=sum(IA*probmuestra)
piA
var=piA*(1-piA)*(9/10)
var
piAB=sum(IA*IB*probmuestra)
Quiero cambiar las letras "A" y "B" de "piAB", e "IA" e "IB", en la última línea, por las que están en el vector "hoteles", sin repetición, para un total de 10 sentencias (piAC=sum(IA*IC*probmuestra), piAD=sum(IA*ID*probmuestra), piAE=sum(IA*IE*probmuestra), piBC, etc) ejecutables. Intenté el siguiente código:
for (i in hoteles){
for (j in hoteles){
if (i!=j)
print(pi[i][j]\=sum(I[i]*I[j]*probmuestra))
}
}
Pero me arroja el siguiente error:
Error: unexpected '=' in:
" if (i!=j)
print(pi[i][j]="
> }
Error: unexpected '}' in " }"
> }
Error: unexpected '}' in "}
Me gustaría que, por favor, me indicaran que está mal como tal con el código que propuse y, si conocen una alternativa para lo que quiero intentar, les agradecería bastante que me la compartieran.
Quedo atento a sus comentarios.
Saludos.