On 11-12-26 5:44 AM, sparandekar wrote:
Hello !
I am attempting to switch from being a long time SAS user to R, and would
really appreciate a bit of help ! The first thing I do in getting a large
dataset (thousands of obervations and hundreds of variables) is to run a SAS
command PROC CONTENTS VARNUM command - this provides me a table with the
name of each variable, its type and length; then I run a PROC MEANS - for
numerical variables it gives me a table with the number of non-missing
values, min, max, mean and std. dev. My data usually has errors and this
first step helps me to spot the errors and 'clean' the dataset.
The 'summary' function in R and other function as part of Hmisc or Psych
package do not work for me.
How can I get a table from an R data.frame that has the following structure
(header row and example).
Rowname Character/Integer Length Non-Missing Minimum
Maximum Mean SD
HHID Integer 12 32,344
114455007701 514756007812 2.345 x 10^10 1.456 x 10^10
Head Character 38 24,566
- - -
-
Using the tables package, you can get something like that as follows,
assuming that "df" is your dataframe:
nonmissing <- function(x) sum(!is.na(x))
tabular(All(df, character=TRUE) ~ (typeof + length + nonmissing + min +
max + mean + sd))
It isn't perfect: it will skip anything that isn't numeric or character
(e.g. factors). There are ways to work around that, but they aren't as
simple as you might like. You can also use
sapply(df, class)
to see the classes of all the columns.
Duncan Murdoch
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.