| % File src/library/base/man/print.Rd |
| % Part of the R package, https://www.R-project.org |
| % Copyright 1995-2017 R Core Team |
| % Distributed under GPL 2 or later |
| |
| \name{print} |
| \title{Print Values} |
| \usage{% print.default() --> ./print.default.Rd |
| print(x, \dots) |
| |
| \method{print}{factor}(x, quote = FALSE, max.levels = NULL, |
| width = getOption("width"), \dots) |
| |
| \method{print}{table}(x, digits = getOption("digits"), quote = FALSE, |
| na.print = "", zero.print = "0", |
| right = is.numeric(x) || is.complex(x), |
| justify = "none", \dots) |
| |
| \method{print}{function}(x, useSource = TRUE, \dots) |
| } |
| \alias{print} |
| \alias{print.factor} |
| \alias{print.function} |
| \alias{print.listof} |
| \alias{print.simple.list} |
| \alias{print.Dlist} |
| \alias{print.table} |
| \description{ |
| \code{print} prints its argument and returns it \emph{invisibly} (via |
| \code{\link{invisible}(x)}). It is a generic function which means that |
| new printing methods can be easily added for new \code{\link{class}}es. |
| } |
| \arguments{ |
| \item{x}{an object used to select a method.} |
| \item{\dots}{further arguments passed to or from other methods.} |
| \item{quote}{logical, indicating whether or not strings should be |
| printed with surrounding quotes.} |
| \item{max.levels}{integer, indicating how many levels should be |
| printed for a factor; if \code{0}, no extra "Levels" line will be |
| printed. The default, \code{NULL}, entails choosing \code{max.levels} |
| such that the levels print on one line of width \code{width}.} |
| \item{width}{only used when \code{max.levels} is NULL, see above.} |
| \item{digits}{minimal number of \emph{significant} digits, see |
| \code{\link{print.default}}.} |
| \item{na.print}{character string (or \code{NULL}) indicating |
| \code{\link{NA}} values in printed output, see |
| \code{\link{print.default}}.} |
| \item{zero.print}{character specifying how zeros (\code{0}) should be |
| printed; for sparse tables, using \code{"."} can produce more |
| readable results, similar to printing sparse matrices in \CRANpkg{Matrix}.} |
| \item{right}{logical, indicating whether or not strings should be |
| right aligned.} |
| \item{justify}{character indicating if strings should left- or |
| right-justified or left alone, passed to \code{\link{format}}.} |
| \item{useSource}{logical indicating if internally stored source |
| should be used for printing when present, e.g., if |
| \code{\link{options}(keep.source = TRUE)} has been in use.} |
| } |
| \details{ |
| The default method, \code{\link{print.default}} has its own help page. |
| Use \code{\link{methods}("print")} to get all the methods for the |
| \code{print} generic. |
| |
| \code{print.factor} allows some customization and is used for printing |
| \code{\link{ordered}} factors as well. |
| |
| \code{print.table} for printing \code{\link{table}}s allows other |
| customization. As of R 3.0.0, it only prints a description in case of a table |
| with 0-extents (this can happen if a classifier has no valid data). |
| |
| See \code{\link{noquote}} as an example of a class whose main |
| purpose is a specific \code{print} method. |
| } |
| \references{ |
| Chambers, J. M. and Hastie, T. J. (1992) |
| \emph{Statistical Models in S.} |
| Wadsworth & Brooks/Cole. |
| } |
| \seealso{ |
| The default method \code{\link{print.default}}, and help for the |
| methods above; further \code{\link{options}}, \code{\link{noquote}}. |
| |
| For more customizable (but cumbersome) printing, see |
| \code{\link{cat}}, \code{\link{format}} or also \code{\link{write}}. |
| For a simple prototypical print method, see |
| \code{\link[tools]{.print.via.format}} in package \pkg{tools}. |
| } |
| \examples{ |
| require(stats) |
| |
| ts(1:20) #-- print is the "Default function" --> print.ts(.) is called |
| for(i in 1:3) print(1:i) |
| |
| ## Printing of factors |
| attenu$station ## 117 levels -> 'max.levels' depending on width |
| |
| ## ordered factors: levels "l1 < l2 < .." |
| esoph$agegp[1:12] |
| esoph$alcgp[1:12] |
| |
| ## Printing of sparse (contingency) tables |
| set.seed(521) |
| t1 <- round(abs(rt(200, df = 1.8))) |
| t2 <- round(abs(rt(200, df = 1.4))) |
| table(t1, t2) # simple |
| print(table(t1, t2), zero.print = ".") # nicer to read |
| |
| ## same for non-integer "table": |
| T <- table(t2,t1) |
| T <- T * (1+round(rlnorm(length(T)))/4) |
| print(T, zero.print = ".") # quite nicer, |
| print.table(T[,2:8] * 1e9, digits=3, zero.print = ".") |
| ## still slightly inferior to Matrix::Matrix(T) for larger T |
| |
| ## Corner cases with empty extents: |
| table(1, NA) # < table of extent 1 x 0 > |
| } |
| \keyword{print} |