Learn R Programming

fdth (version 1.3-0)

print.fdt: Print methods for fdt objects

Description

S3 methods to return a data.frame (the frequency distribution table - fdt) for fdt.default and fdt.multiple objects; data.frame (the frequency distribution table - fdt_cat) for fdt_cat.default and fdt_cat.multiple objects.

Usage

## S3 methods
# S3 method for fdt.default
print(x,
      columns=1:6,
      round=2,
      format.classes=FALSE,
      pattern='%09.3e',
      row.names=FALSE,
      right=TRUE, ...)

# S3 method for fdt.multiple print(x, columns=1:6, round=2, format.classes=FALSE, pattern='%09.3e', row.names=FALSE, right=TRUE, ...)

# S3 method for fdt_cat.default print(x, columns=1:6, round=2, row.names=FALSE, right=TRUE, ...)

# S3 method for fdt_cat.multiple print(x, columns=1:6, round=2, row.names=FALSE, right=TRUE, ...)

Value

A single data.frame for fdt.default and fdt.default or multiple

data.frames for fdt.multiple and fdt_cat.multiple.

Arguments

x

a fdt object.

columns

a vector of integers to select columns of the data.frame table.

round

rounds fdt columns to the specified number of decimal places (default 2).

format.classes

logical, if TRUE the first column of the data.frame table will be formated using regular expression. The default is “%09.3e”.

pattern

same as fmt in sprintf.

row.names

logical (or character vector), indicating whether (or what) row names should be printed. The default is FALSE.

right

logical, indicating whether or not strings should be right-aligned. The default is right-alignment.

...

potential further arguments (require by generic).

Author

Faria, J. C.
Allaman, I. B
Jelihovschi, E. G.

Details

For print.fdt, it is possible to select what columns of the table (a data.frame) will be shown, as well as the pattern of the first column, for print.fdt_cat it is only possible to select what columns of the table (a data.frame) will be shown. The columns are:

  1. Class limits

  2. f - absolute frequency

  3. rf - relative frequency

  4. rf(%) - relative frequency, %

  5. cf - cumulative frequency

  6. cf(%) - cumulative frequency, %

The available parameters offer an easy and powerful way to format the fdt for publications and other purposes.

Examples

Run this code
library (fdth)

#======================
# Vectors: univariated
#======================
set.seed(1)

x <- rnorm(n=1e3,
           mean=5,
           sd=1)

ft <- fdt(x)

str(ft)

ft

print(ft) # the same

print(ft,
      format=TRUE)      # It can not be what you want to publications!

print(ft,
      format=TRUE,
      pattern='%.2f')   # Huumm ..., good, but ... Can it be better?

print(ft,
      col=c(1:2, 4, 6),
      format=TRUE, 
      pattern='%.2f')   # Yes, it can!

range(x)                 # To know x

print(fdt(x,
          start=1,
          end=9,
          h=1),
      col=c(1:2, 4, 6),
      format=TRUE,
      pattern='%d')     # Is it nice now?

ft[['table']]                        # Stores the feq. dist. table (fdt)
ft[['breaks']]                       # Stores the breaks of fdt
ft[['breaks']]['start']              # Stores the left value of the first class
ft[['breaks']]['end']                # Stores the right value of the last class
ft[['breaks']]['h']                  # Stores the class interval
as.logical(ft[['breaks']]['right'])  # Stores the right option

#=============================================
# Data.frames: multivariated with categorical
#=============================================
mdf <- data.frame(X1=rep(LETTERS[1:4], 25),
                  X2=as.factor(rep(1:10, 10)),
                  Y1=c(NA, NA, rnorm(96, 10, 1), NA, NA),
                  Y2=rnorm(100, 60, 4),
                  Y3=rnorm(100, 50, 4),
                  Y4=rnorm(100, 40, 4),
                  stringsAsFactors=TRUE)
                  
(ft <- fdt_cat(mdf))
                  
print(ft)

(ft <- fdt(mdf,
         na.rm=TRUE))

print(ft)

str(ft)

print(ft, # the s
      format=TRUE)

print(ft,
      format=TRUE,
      pattern='%05.2f')  # regular expression

print(ft,
      col=c(1:2, 4, 6), 
      format=TRUE, 
      pattern='%05.2f')

print(ft,
      col=c(1:2, 4, 6))

print(ft,
      col=c(1:2, 4, 6),
      format=TRUE,
      pattern='%05.2f')

levels(mdf$X1)

print(fdt(mdf,
          k=5,
          by='X1',
         na.rm=TRUE))

levels(mdf$X2)

print(fdt(mdf,
          breaks='FD',
          by='X2',
          na.rm=TRUE),
      round=3)

print(fdt(mdf,
          k=5,
          by='X2',
          na.rm=TRUE),
      format=TRUE,
      round=3)

print(fdt(iris,
          k=5),
      format=TRUE,
      patter='%04.2f')

levels(iris$Species)

print(fdt(iris,
          k=5,
          by='Species'),
      format=TRUE, 
      patter='%04.2f')

#=========================
# Matrices: multivariated
#=========================
print(fdt(state.x77), 
      col=c(1:2, 4, 6),
      format=TRUE)

print(fdt(volcano,
          right=TRUE),
      col=c(1:2, 4, 6),
      round=3,
      format=TRUE,
      pattern='%05.1f')

Run the code above in your browser using DataLab