Skip to contents

Compactly Display the Structure of a data.frame. A better version of str.

Usage

strdf(
  x,
  unique_width = 20,
  unique_sort = FALSE,
  glance_width = 20,
  print = TRUE
)

Arguments

x

A data.frame.

unique_width

An integer for the maximum width of 'unique' string output.

unique_sort

TRUE or FALSE. If TRUE, will sort unique values A to Z or smallest to largest. If FALSE will show uniques in order of first occurrence.

glance_width

An integer for the maximum width of 'glance' string output.

print

TRUE or FALSE. If TRUE, output will be printed to console with right-alignment. If FALSE output will be returned as a data.frame.

Value

data.frame

See also

Examples

#----------------------------------------------------------------------------
# strdf() examples
#----------------------------------------------------------------------------
library(bkmisc)

str(mtcars)
#> 'data.frame':	32 obs. of  11 variables:
#>  $ mpg : num  21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
#>  $ cyl : num  6 6 4 6 8 6 8 4 4 6 ...
#>  $ disp: num  160 160 108 258 360 ...
#>  $ hp  : num  110 110 93 110 175 105 245 62 95 123 ...
#>  $ drat: num  3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
#>  $ wt  : num  2.62 2.88 2.32 3.21 3.44 ...
#>  $ qsec: num  16.5 17 18.6 19.4 17 ...
#>  $ vs  : num  0 0 1 1 0 1 0 1 1 1 ...
#>  $ am  : num  1 1 1 0 0 0 0 0 0 0 ...
#>  $ gear: num  4 4 4 3 3 3 3 4 4 4 ...
#>  $ carb: num  4 4 1 1 2 1 4 2 2 4 ...
strdf(mtcars)
#>    name type    n  n_missing n_unique unique               glance              
#> 1  mpg  numeric 32 0         25       21, 22.8, 21.4, 1... 21, 21, 22.8, 21....
#> 2  cyl  numeric 32 0          3       6, 4, 8              6, 6, 4, 6, 8, 6,...
#> 3  disp numeric 32 0         27       160, 108, 258, 36... 160, 160, 108, 25...
#> 4  hp   numeric 32 0         22       110, 93, 175, 105... 110, 110, 93, 110...
#> 5  drat numeric 32 0         22       3.9, 3.85, 3.08, ... 3.9, 3.9, 3.85, 3...
#> 6  wt   numeric 32 0         29       2.62, 2.875, 2.32... 2.62, 2.875, 2.32...
#> 7  qsec numeric 32 0         30       16.46, 17.02, 18.... 16.46, 17.02, 18....
#> 8  vs   numeric 32 0          2       0, 1                 0, 0, 1, 1, 0, 1,...
#> 9  am   numeric 32 0          2       1, 0                 1, 1, 1, 0, 0, 0,...
#> 10 gear numeric 32 0          3       4, 3, 5              4, 4, 4, 3, 3, 3,...
#> 11 carb numeric 32 0          6       4, 1, 2, 3, 6, 8     4, 4, 1, 1, 2, 1,...