- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Hello!
How to transform data through the log transformation to ensure a normal distribution for the somatic cells count variable, please?
is there any test to test the normality of the data before?
Finally, is there a procedure or other way to do the log transformation?
Thank you!
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
To transform a variable to its logarithmic form, you just need to apply "log()" function, this function returns the natural (base e) logarithm. You can also use "log2()" (base 2) and "log10()" (base 10).
data _null_;
x=10;
y1=log(x);
y2=log2(x);
y3=log10(x);
put y1=/ y2=/ y3=;
run;
y1=2.302585093
y2=3.3219280949
y3=1
To test the normality of data, you can use "proc univariate" with a "normal" option.
proc univariate data=sashelp.class normal qqplot;
var height;
run;
The result window will show you test result like this:
You can also use qqplot statement in this procedure, to get a Q-Q plot of analysis variable.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
To transform a variable to its logarithmic form, you just need to apply "log()" function, this function returns the natural (base e) logarithm. You can also use "log2()" (base 2) and "log10()" (base 10).
data _null_;
x=10;
y1=log(x);
y2=log2(x);
y3=log10(x);
put y1=/ y2=/ y3=;
run;
y1=2.302585093
y2=3.3219280949
y3=1
To test the normality of data, you can use "proc univariate" with a "normal" option.
proc univariate data=sashelp.class normal qqplot;
var height;
run;
The result window will show you test result like this:
You can also use qqplot statement in this procedure, to get a Q-Q plot of analysis variable.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
proc univariate data=sashelp.heart normaltest;
var weight;
run;
For multiple variables to test normality try @Rick_SAS 's blog:
https://blogs.sas.com/content/iml/2012/03/02/testing-data-for-multivariate-normality.html
For transforming data to conform normal distribution ,try Box-Cox transformation:
https://blogs.sas.com/content/iml/2022/08/22/box-cox-transform.html
https://blogs.sas.com/content/iml/2022/08/17/box-cox-regression.html