Beispiel #1
0
def funcionprincipal(dato,variable,opciones):
    from rpy import r  #pylint: disable=import-error
    diccionario={"Descriptivo":{"Media":None,"Varianza":None,u"Desviación":None,"Mediana":None,"Moda":None,"Rango":None,u"Máximo":None,u"Mínimo":None,"Percentil":None,"Curtosis":None,u"Coeficiente de Asimetría":None}}
    lista=dato.query(str(variable))
    diccionario["Descriptivo"]["Variable"]=str(variable)
    diccionario["Descriptivo"][u"Número de casos"]=len(lista)
    if opciones.has_key("Media"): diccionario["Descriptivo"]["Media"]=r.mean(lista)
    if opciones.has_key("Varianza"): diccionario["Descriptivo"]["Varianza"]=r.var(lista)
    if opciones.has_key(u"Desviación"): diccionario["Descriptivo"][u"Desviación"]=r.sd(lista)
    if opciones.has_key("Mediana"): diccionario["Descriptivo"]["Mediana"]=r.median(lista)
    #http://cran.r-project.org/doc/contrib/Lemon-kickstart/kr_dstat.html
    #http://wiki.r-project.org/rwiki/doku.php?id=tips:stats-basic:modalvalue&s=modal
    if opciones.has_key("Moda"): diccionario["Descriptivo"]["Moda"]=__moda(lista)
    if opciones.has_key("Rango"): diccionario["Descriptivo"]["Rango"]=r.range(lista)
    if opciones.has_key(u"Máximo"): diccionario["Descriptivo"][u"Máximo"]=r.max(lista)
    if opciones.has_key(u"Mínimo"): diccionario["Descriptivo"][u"Mínimo"]=r.min(lista)
    if opciones.has_key("Percentil"): diccionario["Descriptivo"]["Percentil"]="TODO"
    if opciones.has_key("Curtosis"):
        r.require("e1071")
        diccionario["Descriptivo"]["Curtosis"]=r.kurtosis(lista)
    if opciones.has_key(u"Coeficiente de Asimetría"):
        r.require("e1071")
        diccionario["Descriptivo"][u"Coeficiente de Asimetría"]=r.skewness(lista)

    return diccionario
Beispiel #2
0
	def summary_stat_of_accuracy_ls(self, acc_ls):
		"""
		11-17-05
			get average, standard deviation from acc_ls
		"""
		accuracy_ls, no_of_predictions_ls, no_of_genes_ls = [], [], []
		for row in acc_ls:
			accuracy_ls.append(row[0])
			no_of_predictions_ls.append(row[2])
			no_of_genes_ls.append(row[3])
		no_of_samples = float(len(acc_ls))
		accuracy_avg = sum(accuracy_ls)/no_of_samples
		accuracy_std = r.sqrt(r.var(accuracy_ls)/no_of_samples)
		no_of_predictions_avg = sum(no_of_predictions_ls)/no_of_samples
		no_of_predictions_std = r.sqrt(r.var(no_of_predictions_ls)/no_of_samples)
		no_of_genes_avg = sum(no_of_genes_ls)/no_of_samples
		no_of_genes_std = r.sqrt(r.var(no_of_genes_ls)/no_of_samples)
		return [accuracy_avg,accuracy_std,no_of_predictions_avg,no_of_predictions_std,no_of_genes_avg,no_of_genes_std]