summary
displays significance code for p.values. Is there a R function that convert p.value to significance code? for example: 0.02 --> '*'
and 0.005 --> '**'
?
Is there a R function that convert p.value to significance code?
4.6k views Asked by mt1022 At
2
There are 2 answers
0
On
Tracking down the code used by summary
, you can find the following in stats:::printCoefmat
:
Signif <- symnum(pv, corr = FALSE, na = FALSE,
cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1),
symbols = c("***", "**", "*", ".", " "))
You can create your own function to do it, such as
signif.num <- function(x) {
symnum(x, corr = FALSE, na = FALSE, legend = FALSE,
cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1),
symbols = c("***", "**", "*", ".", " "))
}
signif.num(c(1e-8, 0.01, 0.05, 0.1, 0.2))
(Note the last value is just a space and not visible in the output)
Use
symnum
as shown below.?symnum
for more info.giving:
The above code is used in R itself in
stats::printCoefmat
(see?printCoefmat
) which is called fromstats:::print.summary.lm
. Note that it produces an object of class"noquote"
and also provides a legend in the"legend"
attribute.