Muchas gracias Carlos, muy amable.
On Wed, 29 Mar 2023 at 15:18, Carlos Ortega <cof en qualityexcellence.es>
wrote:
> Ah...
> Sí, de esta forma...
>
> > resout <- df %>%
> + mutate(year = year(ym(yearmon))) %>%
> + mutate(month = month(ym(yearmon))) %>%
> + select(-year) %>%
> + relocate(month, .after = yearmon) %>%
> +
>
> * pivot_longer( cols = X1:X5, names_to = "vars" ) %>%+
mutate(mes_avg > mean(value), .by = c(month, vars)) %>%+ select(month,
vars, mes_avg) %>%*
> + distinct() %>%
> + as.data.frame
> > resout
> month vars mes_avg
> 1 1 X1 0.5063388
> 2 1 X2 0.6054863
> 3 1 X3 0.4747568
> 4 1 X4 0.6525521
> 5 1 X5 0.3378098
> 6 2 X1 0.6480751
> 7 2 X2 0.3866987
> 8 2 X3 0.5628610
> 9 2 X4 0.2965187
> 10 2 X5 0.5039561
> 11 3 X1 0.3565034
> 12 3 X2 0.5595157
> 13 3 X3 0.4526992
> 14 3 X4 0.5256429
> 15 3 X5 0.5396339
> 16 4 X1 0.3492785
> 17 4 X2 0.4719472
> 18 4 X3 0.6069615
> 19 4 X4 0.5099684
> 20 4 X5 0.5375129
> 21 5 X1 0.6083371
> 22 5 X2 0.6986131
> 23 5 X3 0.3419662
> 24 5 X4 0.4950851
> 25 5 X5 0.5467911
> 26 6 X1 0.2031233
> 27 6 X2 0.4891435
> 28 6 X3 0.3186853
> 29 6 X4 0.7101540
> 30 6 X5 0.4964806
> 31 7 X1 0.4853932
> 32 7 X2 0.5883874
> 33 7 X3 0.8781151
> 34 7 X4 0.4065725
> 35 7 X5 0.3009754
> 36 8 X1 0.4974401
> 37 8 X2 0.6118529
> 38 8 X3 0.6042984
> 39 8 X4 0.3386884
> 40 8 X5 0.6710002
> 41 9 X1 0.6392356
> 42 9 X2 0.4150898
> 43 9 X3 0.5861839
> 44 9 X4 0.4325483
> 45 9 X5 0.6310271
> 46 10 X1 0.4523220
> 47 10 X2 0.5130199
> 48 10 X3 0.3362966
> 49 10 X4 0.5372736
> 50 10 X5 0.5077318
> 51 11 X1 0.4055051
> 52 11 X2 0.4510812
> 53 11 X3 0.2245734
> 54 11 X4 0.7682052
> 55 11 X5 0.3541822
> 56 12 X1 0.6346173
> 57 12 X2 0.5956540
> 58 12 X3 0.3881634
> 59 12 X4 0.6156253
> 60 12 X5 0.6732854
> >
>
> #---------
>
> Gracias,
> Carlos Ortega
> www.qualityexcellence.es
>
>
> El mié, 29 mar 2023 a las 22:12, David Camilo Gomez Medina (<
> dcgomezme en unal.edu.co>) escribió:
>
>> Muchísimas gracias Carlos, aunque yo quiero conservar las columnas. Por
>> ejemplo, tú creaste información del año 2019 a 2022, para la columna X1
>> quiero calcular el promedio de enero para esos años y así con las demás
>> columnas. ¿Cómo podría cambiar tu código?
>>
>> On Wed, 29 Mar 2023 at 15:05, Carlos Ortega <cof en
qualityexcellence.es>
>> wrote:
>>
>>> Ah, gracias..
>>>
>>> Me he creado uno de forma sintética...
>>> Esta es una forma...
>>>
>>> #---------------------------------
>>> > library(dplyr)
>>> > library(tidyr)
>>> > library(lubridate)
>>> >
>>> >
>>> > crear_data_frame <- function(anios_inicio, anios_fin) {
>>> + anios_meses <- expand.grid(Year = anios_inicio:anios_fin,
Month >>> 1:12)
>>> + anios_meses$yearmon <- paste0(anios_meses$Year,
"-", sprintf("%02d",
>>> anios_meses$Month))
>>> + vars <- replicate(5, runif(nrow(anios_meses)))
>>> + data.frame(anios_meses, vars, stringsAsFactors = FALSE) %>%
>>> + select(-Year, -Month) %>%
>>> + arrange(yearmon)
>>> + }
>>> >
>>> > df <- crear_data_frame(2019, 2022)
>>> >
>>> > head(df)
>>> yearmon X1 X2 X3 X4 X5
>>> 1 2019-01 0.2783405 0.1556831 0.007564986 0.9981701 0.35200632
>>> 2 2019-02 0.3906244 0.1525354 0.794696565 0.6935012 0.15611665
>>> 3 2019-03 0.3607439 0.2350400 0.208026463 0.1175302 0.84753470
>>> 4 2019-04 0.7787032 0.3713333 0.697207166 0.3701457 0.04013776
>>> 5 2019-05 0.4973347 0.6898472 0.603442922 0.5696876 0.63328772
>>> 6 2019-06 0.5392983 0.9604180 0.456174444 0.7767546 0.62486765
>>> >
>>> > resout <- df %>%
>>> + mutate(year = year(ym(yearmon))) %>%
>>> + mutate(month = month(ym(yearmon))) %>%
>>> + select(-year) %>%
>>> + relocate(month, .after = yearmon) %>%
>>> + pivot_longer( cols = X1:X5) %>%
>>> + mutate(mes_avg = mean(value), .by = month) %>%
>>> + select(month, mes_avg) %>%
>>> + distinct() %>%
>>> + as.data.frame
>>> > resout
>>> month mes_avg
>>> 1 1 0.4305554
>>> 2 2 0.4485030
>>> 3 3 0.4451672
>>> 4 4 0.4101606
>>> 5 5 0.4715812
>>> 6 6 0.5428447
>>> 7 7 0.5350282
>>> 8 8 0.4792279
>>> 9 9 0.5052422
>>> 10 10 0.4272948
>>> 11 11 0.5197938
>>> 12 12 0.3883511
>>>
>>> #------------------------------------
>>>
>>> El mié, 29 mar 2023 a las 21:54, David Camilo Gomez Medina (<
>>> dcgomezme en unal.edu.co>) escribió:
>>>
>>>> Claro Carlos, gracias, exporté el dataframe a Excel.
>>>>
>>>>
>>>>
>>>> On Wed, 29 Mar 2023 at 14:44, Carlos Ortega <cof en
qualityexcellence.es>
>>>> wrote:
>>>>
>>>>> Hola,
>>>>>
>>>>> Puedes pasar una pequeña muestra del conjunto para darte la
solución...
>>>>>
>>>>> Gracias,
>>>>> Carlos Ortega
>>>>> www.qualityexcellence.es
>>>>>
>>>>> El mié, 29 mar 2023 a las 21:38, David Camilo Gomez Medina
(<
>>>>> dcgomezme en unal.edu.co>) escribió:
>>>>>
>>>>>> Buen día a todos,
>>>>>>
>>>>>> Tengo un dataframe donde está almacenada la información
por año y
>>>>>> mes, deseo calcular el promedio de todos los meses, es
decir, obtener el
>>>>>> promedio mensual multianual de cada columna. He
intentado realizarlo con la
>>>>>> función aggregate, pero no sé cómo seleccionar
solamente el mes. Por
>>>>>> ejemplo, coger solo el mes de enero ('01') de
cada año y promediarlo.
>>>>>>
>>>>>> Quedo muy atento, muchas gracias.
>>>>>>
>>>>>> [image: image.png]
>>>>>>
>>>>>> *Aviso legal:* El contenido de este mensaje y los
archivos adjuntos
>>>>>> son confidenciales y de uso exclusivo de la Universidad
Nacional de
>>>>>> Colombia. Se encuentran dirigidos sólo para el uso del
destinatario al cual
>>>>>> van enviados. La reproducción, lectura y/o copia se
encuentran prohibidas a
>>>>>> cualquier persona diferente a este y puede ser ilegal.
Si usted lo ha
>>>>>> recibido por error, infórmenos y elimínelo de su
correo. Los Datos
>>>>>> Personales serán tratados conforme a la Ley 1581 de
2012 y a nuestra
>>>>>> Política de Datos Personales que podrá consultar en la
página web
>>>>>> www.unal.edu.co. Las opiniones, informaciones,
conclusiones y
>>>>>> cualquier otro tipo de dato contenido en este correo
electrónico, no
>>>>>> relacionados con la actividad de la Universidad
Nacional de Colombia, se
>>>>>> entenderá como personales y de ninguna manera son
avaladas por la
>>>>>> Universidad.
>>>>>> _______________________________________________
>>>>>> R-help-es mailing list
>>>>>> R-help-es en r-project.org
>>>>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Saludos,
>>>>> Carlos Ortega
>>>>> www.qualityexcellence.es
>>>>>
>>>>
>>>> *Aviso legal:* El contenido de este mensaje y los archivos
adjuntos
>>>> son confidenciales y de uso exclusivo de la Universidad
Nacional de
>>>> Colombia. Se encuentran dirigidos sólo para el uso del
destinatario al cual
>>>> van enviados. La reproducción, lectura y/o copia se encuentran
prohibidas a
>>>> cualquier persona diferente a este y puede ser ilegal. Si usted
lo ha
>>>> recibido por error, infórmenos y elimínelo de su correo. Los
Datos
>>>> Personales serán tratados conforme a la Ley 1581 de 2012 y a
nuestra
>>>> Política de Datos Personales que podrá consultar en la página
web
>>>> www.unal.edu.co. Las opiniones, informaciones, conclusiones y
>>>> cualquier otro tipo de dato contenido en este correo
electrónico, no
>>>> relacionados con la actividad de la Universidad Nacional de
Colombia, se
>>>> entenderá como personales y de ninguna manera son avaladas por
la
>>>> Universidad.
>>>>
>>>
>>>
>>> --
>>> Saludos,
>>> Carlos Ortega
>>> www.qualityexcellence.es
>>>
>>
>> *Aviso legal:* El contenido de este mensaje y los archivos adjuntos son
>> confidenciales y de uso exclusivo de la Universidad Nacional de
Colombia.
>> Se encuentran dirigidos sólo para el uso del destinatario al cual van
>> enviados. La reproducción, lectura y/o copia se encuentran prohibidas a
>> cualquier persona diferente a este y puede ser ilegal. Si usted lo ha
>> recibido por error, infórmenos y elimínelo de su correo. Los Datos
>> Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra
>> Política de Datos Personales que podrá consultar en la página web
>> www.unal.edu.co. Las opiniones, informaciones, conclusiones y cualquier
>> otro tipo de dato contenido en este correo electrónico, no relacionados
con
>> la actividad de la Universidad Nacional de Colombia, se entenderá como
>> personales y de ninguna manera son avaladas por la Universidad.
>>
>
>
> --
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
--
*Aviso legal:* El contenido de este mensaje y los archivos adjuntos son
confidenciales y de uso exclusivo de la Universidad Nacional de Colombia.
Se encuentran dirigidos sólo para el uso del destinatario al cual van
enviados. La reproducción, lectura y/o copia se encuentran prohibidas a
cualquier persona diferente a este y puede ser ilegal. Si usted lo ha
recibido por error, infórmenos y elimínelo de su correo. Los Datos
Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra
Política de Datos Personales que podrá consultar en la página web
www.unal.edu.co <http://www.unal.edu.co/>.* *Las opiniones, informaciones,
conclusiones y cualquier otro tipo de dato contenido en este correo
electrónico, no relacionados con la actividad de la Universidad Nacional de
Colombia, se entenderá como personales y de ninguna manera son avaladas por
la Universidad.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20230329/986c77fe/attachment-0001.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 25589 bytes
Desc: no disponible
URL:
<https://stat.ethz.ch/pipermail/r-help-es/attachments/20230329/986c77fe/attachment-0001.png>