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
def funcionprincipal(dato,comanda,opciones): from rpy import r #pylint: disable=import-error diccionario={} condicion1=comanda[0][0]+"="+comanda[0][1] condicion2=comanda[0][0]+"="+comanda[0][2] lista1=dato.query(comanda[1],condicion1) lista2=dato.query(comanda[1],condicion2) lateral="two.sided" resultadoigual=r.t_test(lista1,lista2,var_equal=True,alt=lateral) resultadodif=r.t_test(lista1,lista2,var_equal=False,alt=lateral) diccionario[u"Comparación de medias"] = {} diccionario[u"Comparación de medias"][0] = {} diccionario[u"Comparación de medias"][1] = {} diccionario[u"Comparación de medias"][0]["Variable"] = comanda[1] diccionario[u"Comparación de medias"][0]["Caso1"] = dato.resolver_etiqueta(comanda[0][0],int(comanda[0][1])) diccionario[u"Comparación de medias"][0]["Caso2"] = comanda[0][2] diccionario[u"Comparación de medias"][0]["Varianzas"] = "Se asume igual" diccionario[u"Comparación de medias"][0][u"Significación bilateral para T"] = resultadoigual['p.value'] diccionario[u"Comparación de medias"][0][u"Valor T obtenido"] = resultadoigual['statistic']['t'] diccionario[u"Comparación de medias"][1]["Variable"] = comanda[1] diccionario[u"Comparación de medias"][1]["Caso1"] = comanda[0][1] diccionario[u"Comparación de medias"][1]["Caso2"] = comanda[0][2] diccionario[u"Comparación de medias"][1]["Varianzas"] = "Se asume distinta" diccionario[u"Comparación de medias"][1][u"Significación bilateral para T"]=resultadodif['p.value'] diccionario[u"Comparación de medias"][1][u"Valor T obtenido"]=resultadodif['statistic']['t'] diccionario["Descriptivo"] = {} diccionario["Descriptivo"][0] = {} diccionario["Descriptivo"][0]["Variable"]=comanda[1] diccionario["Descriptivo"][0]["Caso"]=comanda[0][1] diccionario["Descriptivo"][0][u"Número de sujetos"]=len(lista1) diccionario["Descriptivo"][0][u"Media"]=r.mean(lista1) diccionario["Descriptivo"][0][u"Desviación Típica"]=r.sd(lista1) diccionario["Descriptivo"][1]={} diccionario["Descriptivo"][1]["Variable"]=comanda[1] diccionario["Descriptivo"][1]["Caso"]=comanda[0][2] diccionario["Descriptivo"][1][u"Número de sujetos"]=len(lista2) diccionario["Descriptivo"][1][u"Media"]=r.mean(lista2) diccionario["Descriptivo"][1][u"Desviación Típica"]=r.sd(lista2) diccionario[u"Comparación de varianzas"]={} diccionario[u"Comparación de varianzas"]["Variable"]=comanda[1] diccionario[u"Comparación de varianzas"]["Caso1"]=comanda[0][1] diccionario[u"Comparación de varianzas"]["Caso2"]=comanda[0][2] diccionario[u"Comparación de varianzas"][u"Significación"]=r.var_test(lista1,lista2)['p.value'] diccionario[u"Comparación de varianzas"][u"Valor del estadistico"]=r.var_test(lista1,lista2)['statistic']['F'] return diccionario
def mean(self, resp, x): y = r.mean(x); resp.addData('mean', y) return
def mean(self, resp, x): y = r.mean(x) resp.addData('mean', y) return