Use of Sappy and Tappy for Mathematical Calculation
On Jul 10, 2012, at 11:30 AM, "Nordlund, Dan (DSHS/RDA)" <NordlDJ at dshs.wa.gov> wrote:
-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
project.org] On Behalf Of Rantony
Sent: Tuesday, July 10, 2012 3:17 AM
To: r-help at r-project.org
Subject: [R] Use of Sappy and Tappy for Mathematical Calculation
Hi,
i have a matrix like this,
ABC XYZ ...... ..... .....
----- ------
12 20 ...... ..... .....
24 35 ...... ..... .....
30 40 ...... ..... .....
Here, i need to get
Sum of each columns,
Mean of each columns,
median of each columns,
mode of each columns,
Standard deviation of each columns,
variance of each columns,
range of each columns,
count of each columns,
max of each columns,
min of each columns
Can i get output using sappy or tappy functions ? because there have
alots
of records.
I like Dan's solution a lot and it teaches inportant idioms, but I might suggest that you use the col***() functions from the MatrixStats package if speed/data-size is of issue. Best, Michael
Could you please help me fast its kind of urgent ! - Thanks Antony
Here is some code to get you started. You can add in the other functions that you want. You will need to figure out what you want to do if there are missing values. There are built-in functions for most everything you want. You get the range from the min and the max, and you need to decide what to do if a variable has 2 or more modes (you will also need to determine how you are going to get the mode).
# here is sample matrix
mat <- matrix(1:100,nrow=10)
colnames(mat) <- LETTERS[1:10]
# define summarize function
summarize <- function(m) {
sums <- apply(m, 2, sum)
counts <- apply(m, 2, length)
means <- apply(m, 2, mean)
return(rbind(sums, counts, means))
}
# summarize your matrix
summarize(mat)
Hope this is helpful,
Dan
Daniel J. Nordlund
Washington State Department of Social and Health Services
Planning, Performance, and Accountability
Research and Data Analysis Division
Olympia, WA 98504-5204
______________________________________________ R-help at 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.