[R-es] Resultado de la consola como un tibble
Jimmy Erney Reyes Velasco
j|mmyreye@ve|@@co @end|ng |rom gm@||@com
Dom Oct 18 16:06:12 CEST 2020
¡MUCHAS GRACIAS! Carlos me ha servido bastante.
esto es excelente
saludos
Jimmy
El dom., 18 de oct. de 2020 a la(s) 05:32, Carlos Ortega (
cof using qualityexcellence.es) escribió:
> Hola,
>
> Bueno, puedes hacer el cálculo de una forma mucho más compacta y rápida.
> Esta forma es especialmente recomendable cuando tienes muchas columnas y
> muchas filas.
>
> > library(data.table)
> > myDT <- as.data.table(mtcars)
> > myDTlong <- melt(myDT, measure.vars=1:ncol(myDT))
> > myDTlong[ , list(p_value = shapiro.test(value)$p.value, v_stat =
> shapiro.test(value)$statistic) , by = .(variable)]
> variable p_value v_stat
> 1: mpg 1.228814e-01 0.9475647
> 2: cyl 6.058338e-06 0.7533100
> 3: disp 2.080657e-02 0.9200127
> 4: hp 4.880824e-02 0.9334193
> 5: drat 1.100608e-01 0.9458839
> 6: wt 9.265499e-02 0.9432577
> 7: qsec 5.935176e-01 0.9732509
> 8: vs 9.737376e-08 0.6322635
> 9: am 7.836354e-08 0.6250744
> 10: gear 1.306844e-05 0.7727856
> 11: carb 4.382405e-04 0.8510972
>
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
>
>
> El dom., 18 oct. 2020 a las 11:53, Carlos Ortega (<
> cof using qualityexcellence.es>) escribió:
>
>> Hola,
>>
>> No hace falta (en este caso) capturarlo de la consola.
>> El resultado de la función apply se puede capturar y procesar.
>>
>> > data("mtcars")
>> > # Mtcars_matriz <- as.matrix(mtcars)
>> > res_out <- apply(mtcars, MARGIN =2, FUN = shapiro.test)
>> >
>> >
>> > res_df <- as.data.frame(unlist(res_out))
>> > res_df$vars <- rownames(res_df)
>> > rownames(res_df) <- NULL
>> > names(res_df)[1] <- c('values')
>> >
>> > library(stringr)
>> > res_fin <- data.frame(
>> + pvalues = res_df[ str_detect(res_df$vars, "value"), ],
>> + estadis = res_df[ str_detect(res_df$vars, "statistic"), ]
>> + )
>> > res_fin
>> pvalues.values pvalues.vars estadis.values estadis.vars
>> 2 0.122881358539443 mpg.p.value 0.947564726479274 mpg.statistic.W
>> 6 6.05833813310341e-06 cyl.p.value 0.753310022842721 cyl.statistic.W
>> 10 0.0208065696108598 disp.p.value 0.920012680133146 disp.statistic.W
>> 14 0.0488082381051741 hp.p.value 0.93341934019855 hp.statistic.W
>> 18 0.110060757426683 drat.p.value 0.945883896521269 drat.statistic.W
>> 22 0.0926549888932132 wt.p.value 0.943257719087817 wt.statistic.W
>> 26 0.593517649295161 qsec.p.value 0.973250948857977 qsec.statistic.W
>> 30 9.73737573091618e-08 vs.p.value 0.632263534949347 vs.statistic.W
>> 34 7.83635448813453e-08 am.p.value 0.625074366031524 am.statistic.W
>> 38 1.30684376520844e-05 gear.p.value 0.772785633173186 gear.statistic.W
>> 42 0.000438240495931375 carb.p.value 0.851097225173946 carb.statistic.W
>>
>> Saludos,
>> Carlos Ortega
>> www.qualityexcellence.es
>>
>>
>> El dom., 18 oct. 2020 a las 7:12, Jimmy Erney Reyes Velasco (<
>> jimmyreyesvelasco using gmail.com>) escribió:
>>
>>> Buen día
>>> estimados
>>> Estoy tratando de hacer un tibble con los resultados de un apply que se
>>> muestran en la consola que me da R, no estoy seguro si eso se pueda
>>> hacer,
>>> pero me gustaría organizar los resultados de esa manera.
>>> mi código es:
>>> data("mtcars")
>>> Mtcars_matriz <- as.matrix(mtcars)
>>> apply(Mtcars_matriz, MARGIN =2, FUN = shapiro.test)
>>> DF2 <- tibble(Variable = NA, W = NA, Pvalue = NA)
>>>
>>> la idea es que me guarde el nombre de la variable, el valor del
>>> estadístico
>>> y el pvalor.
>>>
>>> ¿alguien sabe si esto se puede hacer?
>>> agradezco mucho su información
>>> saludos
>>>
>>> [[alternative HTML version deleted]]
>>>
>>> _______________________________________________
>>> R-help-es mailing list
>>> R-help-es using r-project.org
>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>
>>
>>
>> --
>> Saludos,
>> Carlos Ortega
>> www.qualityexcellence.es
>>
>
>
> --
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
[[alternative HTML version deleted]]
Más información sobre la lista de distribución R-help-es