[R] Assigning colors on low p-values in table

Jim Lemon jim at bitwrit.com.au
Tue Aug 28 12:27:47 CEST 2012


On 08/27/2012 07:05 PM, Rmillan wrote:
> Hi all R-users,
>
> I’m trying to assign colors on those p-value in my table output that fall
> above a certain critical value, let’s say a p-value>0.05.
> My table looks like this:
> ...
Here is the data frame I used:

returns
            Assets ADF_Level P0     ADF_First P1     ADF_Second P2
1     Liabilities   -2.3109 0.1988 -3.1620   0.0250 -6.0281    0.01
2       Long.Bond   -0.2934 0.9172 -6.1667   0.0100 -7.8970    0.01
3          Stocks   -0.5539 0.8503 -5.5787   0.0100 -8.9303    0.01
4             CPI   -2.1352 0.2640 -2.7050   0.0794 -6.0953    0.01
5         Nom.10Y   -2.6968 0.0807 -1.3854   0.5420 -5.8460    0.01
6         T.Bills   -2.0429 0.2982 -2.2508   0.2211 -4.7610    0.01
7     Commodities   -0.3973 0.9031 -5.0478   0.0100 -6.7784    0.01
8     Real.Estate   -0.6468 0.8159 -4.8601   0.0100 -8.6037    0.01
9   Credit.Spread    0.4181 0.9816 -3.7542   0.0100 -5.9572    0.01
10    Term.Spread   -0.6243 0.8242 -4.1885   0.0100 -6.4269    0.01
11 Dividend.Yield    2.9316 0.9900 -1.6759   0.4343 -5.1065    0.01

> What could be nice was, if it is possible to highlight, for instance, all
> the p-values in this table that are larger than 0.05 with the color red.
> Any ideas on how this can be done?
>
Hi Emil,
Try this:

library(plotrix)
retcol<-cbind(rep(NA,11),ifelse(returns[,"P0"]>0.05,"red",NA),
  rep(NA,11),ifelse(returns[,"P1"]>0.05,"red",NA),
  rep(NA,11),ifelse(returns[,"P2"]>0.05,"red",NA))
plot(1:10,type="n",axes=FALSE,xlab="",ylab="")
addtable2plot(1,9,returns[,-1],bg=retcol)

Jim




More information about the R-help mailing list