I have this object in R:
z = structure(list(year_1 = c(2000L, 2000L, 2000L, 2000L, 2000L,
2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L,
2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2001L, 2001L,
2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L,
2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L,
2001L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L,
2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L,
2002L, 2002L, 2002L, 2002L, 2003L, 2003L, 2003L, 2003L, 2003L,
2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L,
2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2004L, 2004L,
2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L,
2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L,
2004L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L,
2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L,
2005L, 2005L, 2005L, 2005L, 2006L, 2006L, 2006L, 2006L, 2006L,
2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L,
2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2007L, 2007L,
2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L,
2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L,
2007L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L,
2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L,
2008L, 2008L, 2008L, 2008L, 2009L, 2009L, 2009L, 2009L, 2009L,
2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L,
2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2010L, 2010L,
2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L,
2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L,
2010L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L,
2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L,
2011L, 2011L, 2011L, 2011L, 2012L, 2012L, 2012L, 2012L, 2012L,
2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L,
2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2013L, 2013L,
2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L,
2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L,
2013L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L,
2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L,
2014L, 2014L, 2014L, 2014L, 2015L, 2015L, 2015L, 2015L, 2015L,
2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L,
2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2016L, 2016L,
2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L,
2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L,
2016L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L,
2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L,
2017L, 2017L, 2017L, 2017L, 2018L, 2018L, 2018L, 2018L, 2018L,
2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L,
2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2019L, 2019L,
2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L,
2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L,
2019L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L,
2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L,
2020L, 2020L, 2020L, 2020L), year_2 = c(2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L), name_count = c(0L,
0L, 1L, 3L, 1L, 1L, 4L, 1L, 3L, 2L, 3L, 3L, 1L, 2L, 4L, 0L, 4L,
4L, 3L, 1L, 1L, 3L, 1L, 2L, 5L, 2L, 2L, 1L, 0L, 3L, 2L, 1L, 4L,
0L, 2L, 4L, 2L, 3L, 4L, 2L, 2L, 1L, 2L, 2L, 1L, 4L, 3L, 2L, 2L,
0L, 0L, 0L, 3L, 2L, 2L, 2L, 1L, 3L, 3L, 2L, 3L, 6L, 1L, 1L, 1L,
1L, 3L, 2L, 1L, 2L, 4L, 2L, 3L, 1L, 5L, 1L, 3L, 1L, 1L, 0L, 0L,
1L, 1L, 2L, 3L, 6L, 3L, 1L, 3L, 1L, 1L, 2L, 3L, 1L, 2L, 4L, 1L,
1L, 3L, 2L, 5L, 4L, 3L, 2L, 5L, 4L, 4L, 2L, 6L, 3L, 5L, 1L, 1L,
4L, 2L, 2L, 2L, 2L, 2L, 0L, 2L, 4L, 3L, 0L, 3L, 0L, 2L, 2L, 2L,
3L, 5L, 0L, 1L, 4L, 2L, 2L, 2L, 4L, 7L, 1L, 1L, 1L, 2L, 2L, 0L,
1L, 2L, 1L, 1L, 2L, 4L, 3L, 2L, 1L, 5L, 3L, 4L, 3L, 5L, 0L, 4L,
2L, 3L, 1L, 5L, 2L, 3L, 2L, 0L, 5L, 3L, 5L, 2L, 9L, 1L, 3L, 2L,
2L, 1L, 0L, 1L, 3L, 1L, 3L, 1L, 2L, 4L, 3L, 3L, 1L, 3L, 1L, 2L,
1L, 3L, 1L, 5L, 2L, 4L, 1L, 2L, 5L, 1L, 3L, 3L, 1L, 5L, 1L, 3L,
3L, 2L, 2L, 0L, 0L, 5L, 1L, 6L, 6L, 3L, 5L, 3L, 3L, 4L, 1L, 4L,
1L, 0L, 6L, 3L, 1L, 4L, 1L, 1L, 2L, 5L, 2L, 3L, 2L, 2L, 2L, 4L,
0L, 1L, 3L, 0L, 3L, 2L, 1L, 4L, 1L, 8L, 4L, 6L, 1L, 3L, 3L, 3L,
1L, 2L, 1L, 1L, 0L, 1L, 4L, 1L, 1L, 1L, 2L, 3L, 3L, 3L, 0L, 1L,
2L, 4L, 2L, 2L, 3L, 0L, 2L, 4L, 2L, 2L, 1L, 2L, 2L, 1L, 3L, 3L,
1L, 3L, 2L, 4L, 1L, 1L, 4L, 3L, 5L, 1L, 6L, 1L, 4L, 0L, 4L, 2L,
0L, 1L, 4L, 2L, 1L, 1L, 3L, 2L, 1L, 2L, 3L, 2L, 3L, 3L, 1L, 2L,
3L, 1L, 0L, 4L, 2L, 2L, 1L, 3L, 3L, 2L, 1L, 1L, 0L, 1L, 3L, 2L,
2L, 5L, 0L, 3L, 3L, 3L, 3L, 1L, 1L, 6L, 2L, 2L, 4L, 2L, 6L, 1L,
5L, 2L, 2L, 1L, 2L, 2L, 0L, 0L, 1L, 2L, 3L, 2L, 4L, 0L, 6L, 1L,
0L, 0L, 2L, 3L, 7L, 2L, 1L, 2L, 2L, 0L, 1L, 2L, 1L, 1L, 3L, 1L,
1L, 4L, 2L, 6L, 2L, 1L, 4L, 5L, 2L, 3L, 4L, 3L, 2L, 3L, 7L, 2L,
3L, 4L, 2L, 2L, 2L, 2L, 1L, 3L, 2L, 0L, 0L, 2L, 0L, 0L, 0L, 1L,
0L, 2L, 0L, 2L, 2L, 2L, 1L, 0L, 0L, 2L, 3L, 4L, 7L, 3L, 3L, 1L,
1L, 1L, 3L, 2L, 2L, 1L, 4L, 2L)), row.names = c(NA, -441L), class = "data.frame")
I made this into a proper table in R (using the following answer: ):
library(tidyr)
library(kableExtra)
z |>
pivot_wider(names_from = "year_2", values_from = name_count) |>
kable() |>
kable_styling(c("striped")) |>
add_header_above(c(" ", "year_2" = 21), align = "l")
I have the following question: In R, is it possible to do "conditional color formatting" as is done in Microsoft Excel?
For example, is it possible to shade individual cells as darker colors of red if the number in the cell is higher ... and remain whiter if the number is lower?
Thank you!
I have this object in R:
z = structure(list(year_1 = c(2000L, 2000L, 2000L, 2000L, 2000L,
2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L,
2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2001L, 2001L,
2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L,
2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L,
2001L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L,
2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L,
2002L, 2002L, 2002L, 2002L, 2003L, 2003L, 2003L, 2003L, 2003L,
2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L,
2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2004L, 2004L,
2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L,
2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L,
2004L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L,
2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L,
2005L, 2005L, 2005L, 2005L, 2006L, 2006L, 2006L, 2006L, 2006L,
2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L,
2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2007L, 2007L,
2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L,
2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L,
2007L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L,
2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L,
2008L, 2008L, 2008L, 2008L, 2009L, 2009L, 2009L, 2009L, 2009L,
2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L,
2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2010L, 2010L,
2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L,
2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L,
2010L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L,
2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L,
2011L, 2011L, 2011L, 2011L, 2012L, 2012L, 2012L, 2012L, 2012L,
2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L,
2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2013L, 2013L,
2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L,
2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L,
2013L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L,
2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L,
2014L, 2014L, 2014L, 2014L, 2015L, 2015L, 2015L, 2015L, 2015L,
2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L,
2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2016L, 2016L,
2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L,
2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L,
2016L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L,
2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L,
2017L, 2017L, 2017L, 2017L, 2018L, 2018L, 2018L, 2018L, 2018L,
2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L,
2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2019L, 2019L,
2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L,
2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L,
2019L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L,
2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L,
2020L, 2020L, 2020L, 2020L), year_2 = c(2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L), name_count = c(0L,
0L, 1L, 3L, 1L, 1L, 4L, 1L, 3L, 2L, 3L, 3L, 1L, 2L, 4L, 0L, 4L,
4L, 3L, 1L, 1L, 3L, 1L, 2L, 5L, 2L, 2L, 1L, 0L, 3L, 2L, 1L, 4L,
0L, 2L, 4L, 2L, 3L, 4L, 2L, 2L, 1L, 2L, 2L, 1L, 4L, 3L, 2L, 2L,
0L, 0L, 0L, 3L, 2L, 2L, 2L, 1L, 3L, 3L, 2L, 3L, 6L, 1L, 1L, 1L,
1L, 3L, 2L, 1L, 2L, 4L, 2L, 3L, 1L, 5L, 1L, 3L, 1L, 1L, 0L, 0L,
1L, 1L, 2L, 3L, 6L, 3L, 1L, 3L, 1L, 1L, 2L, 3L, 1L, 2L, 4L, 1L,
1L, 3L, 2L, 5L, 4L, 3L, 2L, 5L, 4L, 4L, 2L, 6L, 3L, 5L, 1L, 1L,
4L, 2L, 2L, 2L, 2L, 2L, 0L, 2L, 4L, 3L, 0L, 3L, 0L, 2L, 2L, 2L,
3L, 5L, 0L, 1L, 4L, 2L, 2L, 2L, 4L, 7L, 1L, 1L, 1L, 2L, 2L, 0L,
1L, 2L, 1L, 1L, 2L, 4L, 3L, 2L, 1L, 5L, 3L, 4L, 3L, 5L, 0L, 4L,
2L, 3L, 1L, 5L, 2L, 3L, 2L, 0L, 5L, 3L, 5L, 2L, 9L, 1L, 3L, 2L,
2L, 1L, 0L, 1L, 3L, 1L, 3L, 1L, 2L, 4L, 3L, 3L, 1L, 3L, 1L, 2L,
1L, 3L, 1L, 5L, 2L, 4L, 1L, 2L, 5L, 1L, 3L, 3L, 1L, 5L, 1L, 3L,
3L, 2L, 2L, 0L, 0L, 5L, 1L, 6L, 6L, 3L, 5L, 3L, 3L, 4L, 1L, 4L,
1L, 0L, 6L, 3L, 1L, 4L, 1L, 1L, 2L, 5L, 2L, 3L, 2L, 2L, 2L, 4L,
0L, 1L, 3L, 0L, 3L, 2L, 1L, 4L, 1L, 8L, 4L, 6L, 1L, 3L, 3L, 3L,
1L, 2L, 1L, 1L, 0L, 1L, 4L, 1L, 1L, 1L, 2L, 3L, 3L, 3L, 0L, 1L,
2L, 4L, 2L, 2L, 3L, 0L, 2L, 4L, 2L, 2L, 1L, 2L, 2L, 1L, 3L, 3L,
1L, 3L, 2L, 4L, 1L, 1L, 4L, 3L, 5L, 1L, 6L, 1L, 4L, 0L, 4L, 2L,
0L, 1L, 4L, 2L, 1L, 1L, 3L, 2L, 1L, 2L, 3L, 2L, 3L, 3L, 1L, 2L,
3L, 1L, 0L, 4L, 2L, 2L, 1L, 3L, 3L, 2L, 1L, 1L, 0L, 1L, 3L, 2L,
2L, 5L, 0L, 3L, 3L, 3L, 3L, 1L, 1L, 6L, 2L, 2L, 4L, 2L, 6L, 1L,
5L, 2L, 2L, 1L, 2L, 2L, 0L, 0L, 1L, 2L, 3L, 2L, 4L, 0L, 6L, 1L,
0L, 0L, 2L, 3L, 7L, 2L, 1L, 2L, 2L, 0L, 1L, 2L, 1L, 1L, 3L, 1L,
1L, 4L, 2L, 6L, 2L, 1L, 4L, 5L, 2L, 3L, 4L, 3L, 2L, 3L, 7L, 2L,
3L, 4L, 2L, 2L, 2L, 2L, 1L, 3L, 2L, 0L, 0L, 2L, 0L, 0L, 0L, 1L,
0L, 2L, 0L, 2L, 2L, 2L, 1L, 0L, 0L, 2L, 3L, 4L, 7L, 3L, 3L, 1L,
1L, 1L, 3L, 2L, 2L, 1L, 4L, 2L)), row.names = c(NA, -441L), class = "data.frame")
I made this into a proper table in R (using the following answer: https://stackoverflow/a/79450212/28702910):
library(tidyr)
library(kableExtra)
z |>
pivot_wider(names_from = "year_2", values_from = name_count) |>
kable() |>
kable_styling(c("striped")) |>
add_header_above(c(" ", "year_2" = 21), align = "l")
I have the following question: In R, is it possible to do "conditional color formatting" as is done in Microsoft Excel?
For example, is it possible to shade individual cells as darker colors of red if the number in the cell is higher ... and remain whiter if the number is lower?
Thank you!
Share Improve this question edited 2 hours ago jpsmith 17.3k6 gold badges20 silver badges45 bronze badges asked 3 hours ago nov62024nov62024 1078 bronze badges 4- 3 Sure it is! Have a look here r-bloggers/2016/11/conditional-formatting-of-a-table-in-r or even with gt stackoverflow/a/74311810/28479453. This is how to do it in kableExtra: forum.posit.co/t/… – Tim G Commented 3 hours ago
- 2 or treat it as heatmap with numbers and colours – Friede Commented 3 hours ago
- This question is similar to: Conditionally formatting cells in one column by comparing it with the value from another column using Kable. If you believe it’s different, please edit the question, make it clear how it’s different and/or how the answers on that question are not helpful for your problem. – Limey Commented 2 hours ago
- @limey I dont think this is a dupe since the OP is asking for a gradient based on the value. The excellent answer in the link you send only assigns constant color conditional on category (though please correct me if I'm wrong!) – jpsmith Commented 2 hours ago
2 Answers
Reset to default 3This is a tricky question and the comments give great advice, but none of the resources seemed to tackle your exact question regarding a gradient (please correct me if I'm wrong).
There may be more elegant solutions, but I've come up with a multi-step way to color the background in a gradient based on the value while keeping the display as a kable
table (i.e., not a heat map figure). I've broken it up into a few steps for ease of reading:
library(dplyr)
library(tidyr)
library(kableExtra)
library(scales)
# Wide just for ease of reading the answer
z_wide <- z %>%
pivot_wider(names_from = "year_2",
values_from = name_count)
minmax <- range(z_wide[-1]) # get min and max of all data, for gradient
# helper function to define gradient
bg_color <- function(x, min, max){
norm <- (x - min) / (max - min)
colorRampPalette(c("white", "red"))(100)[ceiling(norm * 99) + 1]
}
# assign data for ease of reading this answer
z_wide_bg <- z_wide %>%
mutate(across(-year_1, ~ cell_spec(.,
background = bg_color(as.numeric(.), minmax[1], minmax[2]),
format = "html")))
# code to make table
z_wide_bg %>%
kable("html", escape = FALSE, align = "c") %>%
kable_styling("striped") %>%
add_header_above(c(" " = 1, "year_2" = 21), align = "l")
Output:
In R, is it possible to do "conditional color formatting" as is done in Microsoft Excel?
An Image with R vanilla
I had quite some fun an image
with additional text()
added to each cell. Wrapped in an optional local()
to prevent the environment from getting cluttered.
The approach requires data which can be represented as square matrix!
Note. Was a long day in Germany. Would be nice if someone suggests a simplified approach to rotate M
--probably by rev
erting s
somewhere? Thank you!
local({
# own re-format routine
values = unlist(z$name_coun)
row_names = unique(z$year_1)
col_names = unique(z$year_2)
nr = nc = length(row_names)
M = matrix(values, nrow = nr, byrow = TRUE, dimnames = list(row_names, col_names))
# reverting magic that harmonises col-argument of image and text
s = seq(nr)
M = t(M[rev(s), ])
image(s, s, M, xlab='', ylab = '', axes = FALSE,
col = hcl.colors(1e3, 'Reds 3', rev = TRUE))
with(expand.grid(x = s, y = s), text(x, y, labels = M, col = "black"))
# add custome axes
axis(2, at = s, labels = rev(row_names), las = 2, col = NA) # left
axis(3, at = s, labels = col_names, las = 2, col = NA) # top
})
Data
> dput(z)
structure(list(year_1 = c(2000L, 2000L, 2000L, 2000L, 2000L,
2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L,
2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2000L, 2001L, 2001L,
2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L,
2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L, 2001L,
2001L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L,
2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L, 2002L,
2002L, 2002L, 2002L, 2002L, 2003L, 2003L, 2003L, 2003L, 2003L,
2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L,
2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2003L, 2004L, 2004L,
2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L,
2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L, 2004L,
2004L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L,
2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L, 2005L,
2005L, 2005L, 2005L, 2005L, 2006L, 2006L, 2006L, 2006L, 2006L,
2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L,
2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2006L, 2007L, 2007L,
2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L,
2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L, 2007L,
2007L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L,
2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L, 2008L,
2008L, 2008L, 2008L, 2008L, 2009L, 2009L, 2009L, 2009L, 2009L,
2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L,
2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2009L, 2010L, 2010L,
2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L,
2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2010L,
2010L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L,
2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L,
2011L, 2011L, 2011L, 2011L, 2012L, 2012L, 2012L, 2012L, 2012L,
2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L,
2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2013L, 2013L,
2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L,
2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L,
2013L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L,
2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L, 2014L,
2014L, 2014L, 2014L, 2014L, 2015L, 2015L, 2015L, 2015L, 2015L,
2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L,
2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2015L, 2016L, 2016L,
2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L,
2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L, 2016L,
2016L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L,
2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L, 2017L,
2017L, 2017L, 2017L, 2017L, 2018L, 2018L, 2018L, 2018L, 2018L,
2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L,
2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2018L, 2019L, 2019L,
2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L,
2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L, 2019L,
2019L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L,
2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L, 2020L,
2020L, 2020L, 2020L, 2020L), year_2 = c(2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L, 2000L, 2001L, 2002L,
2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L,
2012L, 2013L, 2014L, 2015L, 2016L, 2017L, 2018L, 2019L, 2020L,
2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L,
2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 2015L, 2016L, 2017L,
2018L, 2019L, 2020L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L,
2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L,
2015L, 2016L, 2017L, 2018L, 2019L, 2020L), name_count = c(0L,
0L, 1L, 3L, 1L, 1L, 4L, 1L, 3L, 2L, 3L, 3L, 1L, 2L, 4L, 0L, 4L,
4L, 3L, 1L, 1L, 3L, 1L, 2L, 5L, 2L, 2L, 1L, 0L, 3L, 2L, 1L, 4L,
0L, 2L, 4L, 2L, 3L, 4L, 2L, 2L, 1L, 2L, 2L, 1L, 4L, 3L, 2L, 2L,
0L, 0L, 0L, 3L, 2L, 2L, 2L, 1L, 3L, 3L, 2L, 3L, 6L, 1L, 1L, 1L,
1L, 3L, 2L, 1L, 2L, 4L, 2L, 3L, 1L, 5L, 1L, 3L, 1L, 1L, 0L, 0L,
1L, 1L, 2L, 3L, 6L, 3L, 1L, 3L, 1L, 1L, 2L, 3L, 1L, 2L, 4L, 1L,
1L, 3L, 2L, 5L, 4L, 3L, 2L, 5L, 4L, 4L, 2L, 6L, 3L, 5L, 1L, 1L,
4L, 2L, 2L, 2L, 2L, 2L, 0L, 2L, 4L, 3L, 0L, 3L, 0L, 2L, 2L, 2L,
3L, 5L, 0L, 1L, 4L, 2L, 2L, 2L, 4L, 7L, 1L, 1L, 1L, 2L, 2L, 0L,
1L, 2L, 1L, 1L, 2L, 4L, 3L, 2L, 1L, 5L, 3L, 4L, 3L, 5L, 0L, 4L,
2L, 3L, 1L, 5L, 2L, 3L, 2L, 0L, 5L, 3L, 5L, 2L, 9L, 1L, 3L, 2L,
2L, 1L, 0L, 1L, 3L, 1L, 3L, 1L, 2L, 4L, 3L, 3L, 1L, 3L, 1L, 2L,
1L, 3L, 1L, 5L, 2L, 4L, 1L, 2L, 5L, 1L, 3L, 3L, 1L, 5L, 1L, 3L,
3L, 2L, 2L, 0L, 0L, 5L, 1L, 6L, 6L, 3L, 5L, 3L, 3L, 4L, 1L, 4L,
1L, 0L, 6L, 3L, 1L, 4L, 1L, 1L, 2L, 5L, 2L, 3L, 2L, 2L, 2L, 4L,
0L, 1L, 3L, 0L, 3L, 2L, 1L, 4L, 1L, 8L, 4L, 6L, 1L, 3L, 3L, 3L,
1L, 2L, 1L, 1L, 0L, 1L, 4L, 1L, 1L, 1L, 2L, 3L, 3L, 3L, 0L, 1L,
2L, 4L, 2L, 2L, 3L, 0L, 2L, 4L, 2L, 2L, 1L, 2L, 2L, 1L, 3L, 3L,
1L, 3L, 2L, 4L, 1L, 1L, 4L, 3L, 5L, 1L, 6L, 1L, 4L, 0L, 4L, 2L,
0L, 1L, 4L, 2L, 1L, 1L, 3L, 2L, 1L, 2L, 3L, 2L, 3L, 3L, 1L, 2L,
3L, 1L, 0L, 4L, 2L, 2L, 1L, 3L, 3L, 2L, 1L, 1L, 0L, 1L, 3L, 2L,
2L, 5L, 0L, 3L, 3L, 3L, 3L, 1L, 1L, 6L, 2L, 2L, 4L, 2L, 6L, 1L,
5L, 2L, 2L, 1L, 2L, 2L, 0L, 0L, 1L, 2L, 3L, 2L, 4L, 0L, 6L, 1L,
0L, 0L, 2L, 3L, 7L, 2L, 1L, 2L, 2L, 0L, 1L, 2L, 1L, 1L, 3L, 1L,
1L, 4L, 2L, 6L, 2L, 1L, 4L, 5L, 2L, 3L, 4L, 3L, 2L, 3L, 7L, 2L,
3L, 4L, 2L, 2L, 2L, 2L, 1L, 3L, 2L, 0L, 0L, 2L, 0L, 0L, 0L, 1L,
0L, 2L, 0L, 2L, 2L, 2L, 1L, 0L, 0L, 2L, 3L, 4L, 7L, 3L, 3L, 1L,
1L, 1L, 3L, 2L, 2L, 1L, 4L, 2L)), row.names = c(NA, -441L), class = "data.frame")