turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

Find a Community

- Home
- /
- SAS Programming
- /
- Base SAS Programming
- /
- Fitting exponential distributed data and overlayin...

Topic Options

- RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-01-2017 06:20 AM

Hi all,

By using *SEVERITY* procedure, I found that the exponential distribution is the one that fits better empirical data; so, I got the parameter theta.

I built a random dataset distributed according to an exponential distribution wiith parameter *theta* equal to *0.7423*, on the basis of the following code:

```
data exponential (keep = x);
call streaminit(&seed.);
theta = &theta.;
do i = 1 to &n.;
x = theta * rand("Exponential");
output;
end;
run;
```

where n, theta estimate and seed are previosly defined.

After that, I merge the empirical data with the ones etimated above.

Now, I want to compare graphically the distributions.

Can you suggest a way to overlay them?

Thanks all!

- Mark as New
- Bookmark
- Subscribe
- RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to Quantopic

08-01-2017 06:47 AM

Is this a "from a stats point of view whats the best way to graphically represent this type of data"

or a "technically how do I overlay data in a graph" question?

I can't answer the first as thats all greek to me (literally), but for the second, using sgplot ot Graph Template language it is very easy to overlay multiple plots, first join your data, then sgplot it:

proc sgplot data=have; scatter x=xvalue y=empirical; scatter x=xvalue y=othervalue; run;

Will overlay the two graphs, although need to check axis values etc, to make sure they match somehow (not much good if all of one set of values is 100* more than the other for instance.

- Mark as New
- Bookmark
- Subscribe
- RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to Quantopic

08-01-2017 11:49 AM - edited 08-01-2017 12:48 PM

You've generated random Exp(theta) data. A better way is to compute the Exp(theta) PDF (density) and overlay that. You can do it with PROC SGPLOT, but the easiest way is to use the ODS graphics that are automatically produced by PROC SEVERITY or PROC UNIVARIATE. Try submitting

ODS GRAPHICS ON;

before you run the PROC SEVERITY code and you should automatically get a histogram and a fitted density curve, as shown below:

```
data exponential (keep = x);
call streaminit(12345);
theta = 7;
do i = 1 to 200;
x = theta * rand("Exponential");
output;
end;
run;
ods graphics on;
proc severity data=exponential;
loss x;
dist exp;
run;
```