+ Reply to Thread
Page 1 of 2 1 2 LastLast
Results 1 to 15 of 18

Thread: Generating Skewed Normal Distributions

  1. #1
    Points: 2,755, Level: 32
    Level completed: 4%, Points required for next Level: 145

    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Generating Skewed Normal Distributions




    I want to generate Random Normal Distributions with specific degrees of Skewness and Kurtosis. So far I have looked at the following two approaches:

    1. Azzalini approach:
    http://azzalini.stat.unipd.it/SN/faq.html

    I was able to generate a skewed distribution but the skewness parameter was not the same as desired. On analyzing the generated distribution via SAS, the skewness parameter was different from the input parameters that were given to the generator.

    2. Fleishman Transformation method :
    http://www.springerlink.com/content/...ext.pdf?page=1

    It seems that this approach can only generate distributions for a narrow range of skewness and kurtosis. This is not the case for my problem.


    Does anybody have any other ideas about how this can be done? Any help would be greatly appreciated.

    Thanks.

  2. #2
    Super Moderator
    Points: 13,151, Level: 74
    Level completed: 76%, Points required for next Level: 99
    Dragan's Avatar
    Location
    Illinois, US
    Posts
    2,014
    Thanks
    0
    Thanked 223 Times in 192 Posts
    Quote Originally Posted by kanny_g View Post
    I want to generate Random Normal Distributions with specific degrees of Skewness and Kurtosis. So far I have looked at the following two approaches:

    1. Azzalini approach:
    http://azzalini.stat.unipd.it/SN/faq.html

    I was able to generate a skewed distribution but the skewness parameter was not the same as desired. On analyzing the generated distribution via SAS, the skewness parameter was different from the input parameters that were given to the generator.

    2. Fleishman Transformation method :
    http://www.springerlink.com/content/...ext.pdf?page=1

    It seems that this approach can only generate distributions for a narrow range of skewness and kurtosis. This is not the case for my problem.


    Does anybody have any other ideas about how this can be done? Any help would be greatly appreciated.

    Thanks.

    Can you provide me with some specific values (combinations) of skew and kurtosis that you're trying to obtain.

    That would be helpful.

  3. #3
    Points: 2,755, Level: 32
    Level completed: 4%, Points required for next Level: 145

    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Sure. Here it is. I am looking at a skewness range of -15 to +15 and a kurtosis range of -6 to +230. These numbers look big but I got them analyzing real data through SAS. Am I missing something here?

    Skewness Kurtosis
    -10.5 113.9
    0.78 0.4
    1.71 3.0
    1.19 2.2
    -6.76 47.0
    0.3 3.3
    6.13 57.9
    -10.3 112.0
    -14.9 232.0

    Thanks a ton !

  4. #4
    Super Moderator
    Points: 13,151, Level: 74
    Level completed: 76%, Points required for next Level: 99
    Dragan's Avatar
    Location
    Illinois, US
    Posts
    2,014
    Thanks
    0
    Thanked 223 Times in 192 Posts
    Quote Originally Posted by kanny_g View Post
    Sure. Here it is. I am looking at a skewness range of -15 to +15 and a kurtosis range of -6 to +230. These numbers look big but I got them analyzing real data through SAS. Am I missing something here?

    Skewness Kurtosis
    -10.5 113.9
    0.78 0.4
    1.71 3.0
    1.19 2.2
    -6.76 47.0
    0.3 3.3
    6.13 57.9
    -10.3 112.0
    -14.9 232.0

    Thanks a ton !
    One more quick question. Can you provide the samples sizes of your data for each combination.

    Note: I'm checking a couple of options.

  5. #5
    Points: 2,755, Level: 32
    Level completed: 4%, Points required for next Level: 145

    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Sample size is typically around 250 data points. Here is the complete data:

    SampleSize Mean SD Skewness Kurtosis
    255 -9.74 130.7 -10.5 113.9
    148 -1.41 31.3 0.78 0.4
    204 -4.32 33.4 1.19 2.2
    204 -4.55 22.6 0.3 3.3
    259 -16.4 123.8 -10.3 112.0
    247 12.08 96.3 -13.3 199.1
    204 -6.87 24.5 6.13 57.9

    These are parameters for some data points in the the real data I analyzed. I need to simulate data seperately for each of these data points.

  6. #6
    Super Moderator
    Points: 13,151, Level: 74
    Level completed: 76%, Points required for next Level: 99
    Dragan's Avatar
    Location
    Illinois, US
    Posts
    2,014
    Thanks
    0
    Thanked 223 Times in 192 Posts
    Quote Originally Posted by kanny_g View Post
    Sample size is typically around 250 data points. Here is the complete data:

    SampleSize Mean SD Skewness Kurtosis
    255 -9.74 130.7 -10.5 113.9
    148 -1.41 31.3 0.78 0.4
    204 -4.32 33.4 1.19 2.2
    204 -4.55 22.6 0.3 3.3
    259 -16.4 123.8 -10.3 112.0
    247 12.08 96.3 -13.3 199.1
    204 -6.87 24.5 6.13 57.9

    These are parameters for some data points in the the real data I analyzed. I need to simulate data seperately for each of these data points.

    Okay, the variables with the large values of skew and kurtosis present a problem because they are very close the lower boundary condition where:

    Kurtosis>= Skew^2 - 2.

    It is difficult to find a quick and easy algorithm to generate those distributions. I would say try the Johnson system, perhaps.


    For the distribuitons with the small values of skew and kurtosis I can get those with 5-th order polynomials. Just extend the Fleishman coefficient polynomial out two more terms and use these coefficients that I solved:


    skew = 0.3; kurtosis = 3.3
    {c1= -0.05243171921603643`, c2= 0.7811026700180478`,
    c3= 0.06461180232859669, c4= 0.06523276580688626`
    c5= -0.004060027704186753, c6= 0.00044450309226507775`}

    skew 0.78; kurtosis 0.4
    {c1 = -0.16355778133464555`, c2= 1.115366327438384`,
    c3 = 0.1739413624522455`, c4= -0.07233159314494611`,
    c5= -0.003461193705866647 c6= 0.004976296626617393`}


    skew = 1.71, kurtosis = approx (3.0)
    {c1 = -0.3436788177388882`, c2= 0.8432733968093992`,
    c3 = 0.4075746641971442`, c4 = 0.009053205398915984`
    c5=-0.02129861548608534`, c6= 0.002515834784531765`}


    skew = 1.19, kurtosis 2.2
    {c1= -0.2222845833539151`, c2 = 0.974167381521758`,
    c3 = 0.24822011414014425`, c4=-0.02417034140588818`,
    c5= -0.00864517692874305`, c6=0.003774382534529535`}

  7. #7
    Points: 2,755, Level: 32
    Level completed: 4%, Points required for next Level: 145

    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Thanks !...One more question...How did you solve for the Fleishman coefficients ? Can you share the theory behind that? As I mentioned earlier, I have to solve for these coefficients for a lot of data points.

    Appreciate your help.

  8. #8
    Super Moderator
    Points: 13,151, Level: 74
    Level completed: 76%, Points required for next Level: 99
    Dragan's Avatar
    Location
    Illinois, US
    Posts
    2,014
    Thanks
    0
    Thanked 223 Times in 192 Posts
    Quote Originally Posted by kanny_g View Post
    Thanks !...One more question...How did you solve for the Fleishman coefficients ? Can you share the theory behind that? As I mentioned earlier, I have to solve for these coefficients for a lot of data points.

    Appreciate your help.

    I published an article a few years ago in Computational Statistics and Data Analysis that extended the Fleishman coefficient model from a 3rd order polynomial to a 5-th order polynomial i.e. based on six moments. It broadens the parameter space in skew and kurtosis plane.

    I also derived the pdf and cdf for these distributions as well - in an article published in Journal of Statistical Computation and Simulation.

    I don't think you'll be able to get the articles on line. So, if you want them just send me a private note an I'll send them to you.

  9. #9
    Points: 2,546, Level: 30
    Level completed: 64%, Points required for next Level: 54

    Posts
    3
    Thanks
    0
    Thanked 0 Times in 0 Posts

    normal distribution

    Hi,

    I have a similar question (it is actually a simpler one).

    I want to generate probability distributions (values between 0 and 1 and their sum is 1) according to the normal distribution. Let's say I want to generate a distribution of size 10, with mean 0.5 and Standard Deviation of 0.3.

    Do you know a matlab command to do it ??

  10. #10
    Points: 2,546, Level: 30
    Level completed: 64%, Points required for next Level: 54

    Posts
    3
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Is this matlab function does the work ??

    function result = generateDist(size, mean, sigma)
    x = 0 : (1/size) : 1;
    temp = normpdf(x,mean,sigma);
    Sum = sum(temp);
    result = temp./Sum;

  11. #11
    Super Moderator
    Points: 13,151, Level: 74
    Level completed: 76%, Points required for next Level: 99
    Dragan's Avatar
    Location
    Illinois, US
    Posts
    2,014
    Thanks
    0
    Thanked 223 Times in 192 Posts
    Quote Originally Posted by mister_man2424 View Post
    Hi,

    I want to generate probability distributions (values between 0 and 1 and their sum is 1) according to the normal distribution. Let's say I want to generate a distribution of size 10, with mean 0.5 and Standard Deviation of 0.3.

    Any (normal) random number generator will produce numbers that will lie outside your imposed limits of 0 and 1 - given a normally distributed variable with mean of 0.5 and standard deviation of 0.3.


    Note: I'm setting aside your restriction that the sum of random deviates equal 1 - which even complicates the matter even more.

  12. #12
    Points: 2,546, Level: 30
    Level completed: 64%, Points required for next Level: 54

    Posts
    3
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Thanks Dragan, but I forgot to tell that the values should be picked uniformly. For example, if I want 5 values, they should correspond to 0, 0.2, 0.4, 0.6, 0.8.

  13. #13
    Points: 2,520, Level: 30
    Level completed: 47%, Points required for next Level: 80

    Location
    India
    Posts
    1
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Random sample from skew normal distribution using SAS

    hello..
    I want to generate 1000 samples of size 100 from Skewed normal distribution with skewness parameter-5 and +5, mean 0 and sigma 1. I also want to generate 1000 samples of size 100 from Skewed t distribution. It will be great if you can provide me the SAS code for this.

    Waiting for reply ..
    Thank you.

  14. #14
    Points: 1,480, Level: 21
    Level completed: 80%, Points required for next Level: 20

    Posts
    6
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Re: Generating Skewed Normal Distributions

    Quote Originally Posted by Dragan View Post
    I published an article a few years ago in Computational Statistics and Data Analysis that extended the Fleishman coefficient model from a 3rd order polynomial to a 5-th order polynomial i.e. based on six moments. It broadens the parameter space in skew and kurtosis plane.

    I also derived the pdf and cdf for these distributions as well - in an article published in Journal of Statistical Computation and Simulation.

    I don't think you'll be able to get the articles on line. So, if you want them just send me a private note an I'll send them to you.

    Hi, could you tell me the titles of your articles? Thanks.

  15. #15
    Points: 1,151, Level: 18
    Level completed: 51%, Points required for next Level: 49

    Posts
    1
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Generating Closed Skew Normal Distribution


    Hi Everyone,

    I have a similar problem. I want to generate multivariate Closed Skew Normal distribution. Is there any R package that does this job? Or is there any program that generates samples from Closed Skew Normal Distribution.

    Any help would be appreciated.

    Thanks a lot in advance.

+ Reply to Thread
Page 1 of 2 1 2 LastLast

           




Similar Threads

  1. Normal Distributions
    By DeathByStats in forum Statistics
    Replies: 4
    Last Post: 03-21-2011, 03:42 AM
  2. Replies: 1
    Last Post: 01-22-2011, 07:07 PM
  3. Replies: 1
    Last Post: 10-30-2009, 07:54 AM
  4. Replies: 0
    Last Post: 04-10-2009, 03:52 PM
  5. Non-normal distributions
    By msowa in forum Statistics
    Replies: 0
    Last Post: 01-02-2008, 11:51 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts






Advertise on Talk Stats