Message Boards Message Boards


Generating Random Numbers from a Generalized Pareto Distribution

Posted 3 years ago
3 Replies
1 Total Likes

Dear community members, I'm trying to apply Extreme Value Theory to measure operational risks using Mathematica and I'd like to generate some random numbers following a Generalized Pareto Distribution with 3 parameters: location, scale and shape. I know that Mathematica has 4 different types of Pareto Distribution but as far as I know they are different from the Generalized Pareto one. Does anybody know how I could do it? Many thanks in advance, Ruben

3 Replies
Posted 3 years ago

You can use a function such as

ranGenPareto = 
  Compile[{{loc, _Real}, {scale, _Real}, {shape, _Real}},
    u = RandomReal[];
    loc + scale*(u^(-shape) - 1)/shape
   CompilationTarget -> "C", RuntimeAttributes -> {Listable}

to generate random numbers from the distribution. The above assumes you have a C compiler on your computer to speed up things.

Dear Asim, thanks a lot for the answer. Regards, Ruben

   CDF[ParetoDistribution[\[Sigma], 1/\[Xi], \[Gamma], \[Mu]], x]

gives the CDF as it says under 'Characterization' on the Wikipedia page. You can use RandomVariate to create random numbers based on this distribution.

Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
or Discard

Group Abstract Group Abstract