MultiVarRand
  By Baraa Mohandes
  This function generates random values, for multiple correlated variables but with different distributions
  var = MultiVarRand(distribs,rho,n,yes_plot)
 
  distribs: a cell-vector describing the distribution of each variable. 
            each variable is represented by one cell in the vector
            inside this one cell, are the descriptors of the distribution
            first element in the cell must be the NAME of the distribution, from the list of MATLAB accepted distributions
            all remaining elements in the cell are parameters of the distribution
            each cell describing one variable's distribution, must be a number of cells (because the name of distribution is a character string)
            
            Example:
            distribs ={
               {'beta',15,25};      % first  variable has a beta      distribution with parameters 15, 25
               {'rayl',2};          % second variable has a rayleigh  distribution with parameter  2
               {'wbl',5,10};        % third  variable has a weibull   distribution with parameters 5, 10
               {'norm',5,0.2};      % fourth variable has a normal    distribution with parameters 5, 0.2
                       };
  
  rho: The covariance matrix between the variables. invalid matrices will return an error
           A numerical array of 3 columns, of the form: [index of first variable, index of second variable, correlation factor]
  
              Example: 
              rho = [
              1 2 .81
              3 1 -0.5
              3 2 -0.6
                     ]; 
 
              Variables 1 and 2 have a correlation factor of 0.81
              Variables 1 and 3 have a correlation factor of -0.6
              Variable 4 has no correlation with any other variables
  
  n: Number of samples. a scalar
  
  yes_plot: Logical argument. ture = produce demonstrative plots of data, and print the list of correlation factors
  
  Example:
  distribs ={
   {'beta',15,25};
   {'rayl',2};
   {'wbl',5,10};
            };
  rho = [
  1 2 .81
  3 1 -0.5
  3 2 -0.6
  ];
  n=5000;
  MultiVarRand(distribs,rho,n,true);
Citar como
Ba Mo (2025). MultiVarRand (https://es.mathworks.com/matlabcentral/fileexchange/71557-multivarrand), MATLAB Central File Exchange. Recuperado .
Compatibilidad con la versión de MATLAB
Compatibilidad con las plataformas
Windows macOS LinuxCategorías
- AI and Statistics > Statistics and Machine Learning Toolbox > Probability Distributions and Hypothesis Tests > Discrete Distributions > Geometric Distribution >
 
Etiquetas
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Descubra Live Editor
Cree scripts con código, salida y texto formateado en un documento ejecutable.
| Versión | Publicado | Notas de la versión | |
|---|---|---|---|
| 1.0.0 | 
