Defining methods for an S4 class
Like S3 classes, generic functions, and methods, there are similar things also available in the S4 object class. In this recipe, you will create a new method for a generic function for an S4 object class.
Getting ready
To define a new method for an S4 class of object, first you need an object of class S4. Here is the code to create an object of S4 class robustSummary2
:
x <- c(13, 21, 19, 18, 21, 16, 21, 24, 17, 18, 12, 18, 29, 17, 18, 11, 13, 20, 25, 18, 15, 19, 21, 21, 7, 12, 23, 31, 16, 19, 23, 15, 25, 19, 15, 25, 25, 16, 29, 15, 26, 29, 23, 24, 20, 19, 14, 27, 22, 26) robSum <- function(obj){ med <- median(obj) mad <- mad(obj) q1 <- as.numeric(quantile(obj, probs = 0.25)) q3 <- as.numeric(quantile(obj, probs = 0.75)) return(list(median=med, mad=mad, q1= q1, q3=q3)) } rStats <- robSum(obj=x) rStatsS4 <- new("robustSummary", median=rStats$median, mad=rStats$mad...