Matlab - Imponer una restricción

   
Vista:

Imponer una restricción

Publicado por daniel (2 intervenciones) el 28/11/2017 03:49:29
Hola buenas,

Estoy un poco perdido, nose como imponer una restricción a la siguiente orden de matlab.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
A=binornd(1,0.5,100,20)
B=zeros(1,20)
C=zeros(1,20)
 
for i=1:20 ;
    for j=1:100;
   B(1,i)=B(1,i)+A(j,i);
 
    end
end
 
for k=1:20
   for o=0:B(1,k)
       C(1,k)=C(1,k)+normrnd(3,1);
 
    end
 
end


Lo que quiero conseguir es:
En la matriz A tengo una distribución binomial de 100 filas por 20 columnas
En la matriz B sumo los resultados obtenidos en las columas de A, formando una matriz de 1x20
En la matriz C, mi objetivo es: sumar el resultado de una distribución normal con mu=3 y sigma=1 tantas veces como me indique el número de la misma celda de la casilla B

Por ejemplo, si en la B(1,1) = 40, que en la C(1,1) = suma de 40 distribuciones normal (3,1).

Si esto se entiende, querría meter como restricción que al generar la distribución normal (3,1), si el resultado es menor o igual a 0, sume 0 en vez de un número negativo...

No se si me explico correctamente

Muchas gracias por su tiempo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JESUS DAVID ARIZA ROYETH

Imponer una restricción

1
2
3
4
5
6
7
8
9
for k=1:20
   for o=0:B(1,k)
s=normrnd(3,1);
s(s<0)=0;
       C(1,k)=C(1,k)+s;
 
    end
 
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Imponer una restricción

Publicado por daniel (2 intervenciones) el 28/11/2017 19:36:10
muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar