Hello,

fBasics has functions for skewness and kurtosis:
Comments on these functions are welcome!

Diethelm Wuertz


# **********************************************************


kurtosis = function (x, ...) { # A function implemented by D. Wuertz

# FUNCTION:
UseMethod("kurtosis")
}



# ------------------------------------------------------------------------------



kurtosis.default = function (x, na.rm = FALSE, ...) { # A function implemented by D. Wuertz

# Description:
# Returns the value of the kurtosis of a
# distribution function. Missing values
# can be handled.
# FUNCTION:
# Warnings:
if (!is.numeric(x) && !is.complex(x) && !is.logical(x)) {
warning("argument is not numeric or logical: returning NA")
return(as.numeric(NA))}
# Remove NAs:
if (na.rm) x = x[!is.na(x)]


# Kurtosis:
n = length(x)
if (is.integer(x)) x = as.numeric(x)
kurtosis = sum((x-mean(x))^4/var(x)^2)/length(x) - 3
# Return Value:
kurtosis }



# ------------------------------------------------------------------------------



kurtosis.data.frame = function (x, ...) { # A function implemented by D. Wuertz

   sapply(x, kurtosis, ...)
}



# ******************************************************************************


skewness = function (x, ...) { # A function implemented by D. Wuertz

   UseMethod("skewness")
}


# ------------------------------------------------------------------------------



skewness.default = function (x, na.rm = FALSE, ...) { # A function implemented by D. Wuertz

# Description:
# Returns the value of the skewness of a
# distribution function. Missing values
# can be handled.
# FUNCTION:
# Warnings:
if (!is.numeric(x) && !is.complex(x) && !is.logical(x)) {
warning("argument is not numeric or logical: returning NA")
return(as.numeric(NA))}
# Remove NAs:
if (na.rm) x = x[!is.na(x)]


# Skewness:
n = length(x)
if (is.integer(x)) x = as.numeric(x)
skewness = sum((x-mean(x))^3/sqrt(var(x))^3)/length(x)
# Return Value:
skewness }



# ------------------------------------------------------------------------------



skewness.data.frame = function (x, ...) { # A function implemented by D. Wuertz

   sapply(x, skewness, ...)
}



Vito Ricci wrote:

Hi,

in which R-package I could find skewness and kurtosis
measures for a distribution?

I built some functions:

gamma1<-function(x)
{
m=mean(x)
n=length(x)
s=sqrt(var(x))
m3=sum((x-m)^3)/n
g1=m3/(s^3)
return(g1)
}

skewness<-function(x)
{
m=mean(x)
me=median(x)
s=sqrt(var(x))
sk=(m-me)/s
return(sk)
}

bowley<-function(x)
{
q<-as.vector(quantile(x,prob=c(.25,.50,.75)))
b=(q[3]+q[1]-2*q[2])/(q[3]-q[2])
return(b)
}

b3<-function(x)
{
m=mean(x)
me=median(x)
n=length(x)
d=sum(abs(x-me))/n
b=(m-me)/d
return(b)
}

but I'm looking for some already included in a
package.

Thanks in advance.
Best
Vito


===== Diventare costruttori di soluzioni

"The business of the statistician is to catalyze the scientific learning process." George E. P. Box


Visitate il portale http://www.modugno.it/ e in particolare la sezione su Palese http://www.modugno.it/archivio/cat_palese.shtml

______________________________________________
[EMAIL PROTECTED] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html




______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

Reply via email to