Kijan m manke rich nan 4 jou!

Pandan kèk minit, m te panse ke mwen te pral rich

Men kijan istwa a kòmanse

Nan fen mwa sèptanm, lane 2021 an la, m resevwa nan yon gwoup ke mwa oktòb la se yon mwa patikilye epi trè espesyal. Sa kòmanse atire atansyon m. Mesaj la kontinye pou di ke, mwa a te pra l pote 5 vandredi, 5 samdi epi 5 dimanch. Epi, li kontinye pou eksplike ke, sa a se pa yon bagay ki pa rive fasil, se yon fenomèn ki repete chak 823 lane. Kivledi, yon moun pa p genyen chans sa a de fwa nan ti tan ke li ap fè vivan sou tè a. Eh wi, mesaj la kontinye toujou…apre gran envitasyon sa a, m deja chita sou ti chèz ba mwen, byen enstale ap tann kisa ki ap vini dèyè.

Ki baz yo bay

Mesaj la di ke chinwa yo rele fenomèn sa a “Feng Shui” “Bag full of money” (sak plen lajan, nan kreyòl ayisyen an), sèl sa mwen ta genyen pou mwen fè se ta transfere mesaj sa a bay tout zanmi mwen yo sou rezo a, epi nan 4 jou, lajan ap vide sou mwen.

La a, m di non, se twò fasil pou m pa pran kòb sa a, se twò fasil, m pral pataje li!

Pandan dwèt mwen sou bouton pataje a, gen yon ti vwa ki di m. Eseye verifye enfòmasyon an, avan ou ale pi lwen 😅

Verifikasyon rapid

Fwa sa a, m deside swiv vwa a. M di ke m pral verifye eske se vre ke mwa oktòb 2021 an te pral genyen 5 vandredi 5 samdi epi 5 dimanch. Eben wi, sa se te vre, m verifye nan kalandriye mwen ke enfo a te verite. M di, malerezman, moun nan lane 1198 yo rate chans sa a (sonje ke, selon moun yo, fenomèn sa a rive chak 823 lane), paske m pa kwè yo te genyen tout mwayen kominikasyon sa a pou te fè mesaj la pase bay gwoup zanmi yo. Kanmenm, majorite moun yo te pedi opòtinite sa a pou yo ka rich ak sak lajan.

M kontinye verifye

Vwa a di m, kontinye verifye toujou. M reponn li wi, men ak yon sèl kondisyon, si mwen ap ka itilize yon zouti pwogramayon pou mwen fè sa yon fason otomatik, li ap pi rapid epi mwens siseptib ak erè ke mwen te ka komèt natirèlman nan pase paj almanak, paske bagay lajan se bagay serye.

Pou otomatize verifikasyon an, mwen itilize yon langaj pwogramasyon ki rele R ( ), yo itilize li anpil nan domèn estatistik ak syans done yo. Men pou byen di ou, endepan de langaj la, si ou swiv menm lojik/demach la ou ap rive nan menm rezilta ak mwen nan langaj pwogramasyon prefere pa w (mwen ap gen pou mwen retounen sou sa nan pwochen pòs, ak plis detay sou sa ki konsènen langaj pwogramasyon yo).

Wi, m deside kreye yon eskrip pou verifye eske ta genyen lòt mwa nan ane 2021 an ki ta genyen menm 5 vandredi + 5 samdi epi 5 dimanch.

Verifikasyon otomatik

Nan langaj R, nou ka kreye yon sekans dat nan yon entèval kèlkonk epi tou ak frekans ke ou ta vle a. Lide a se ke, si mwen genyen sekans dat yo, epi mwen konnen ki jou ke yo ye, li fasil pou m verifye ki kantite fwa ke yo repete pandan chak mwa ki konstitye entèval mwen an. Pou sa mwen kreye yon fonksyon ki rele verifikasyon(), ki resevwa 2 agiman, dat inisyal ak dat final. Li retounen mwen yon tablo ak tout mwa nan entèval ant 2 dat sa yo a ki reyini kondisyon sa a, i.e., ki genyen 5 vandredi + 5 samdi epi 5 dimanch.

Si sa ta enterese ou, men kòd la, nan langaj R

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
# mwen itilize 2 bibliyotèk an plis de baz R la
# bibliyotèk yo se:
#   - lubridate: pou trete dat yo
#   - dplyr: pou manipilasyon tablo yo

verifikasyon <- function(dat_inisyal = "2021-01-01",
                         dat_final = "2021-12-31"){
  data.frame(seri_tan = seq(from = lubridate::ymd(dat_inisyal),
                            to = lubridate::ymd(dat_final),
                            by = 'days')) |>
    dplyr::mutate(ane = lubridate::year(seri_tan),
                  mwa = lubridate::month(seri_tan, label = TRUE),
                  jou = lubridate::wday(seri_tan, label = TRUE)) |>
    dplyr::filter(jou %in% c("Fri", "Sat", "Sun")) |>
    dplyr::group_by(ane, mwa) |>
    dplyr::summarise(senk_van_sam_dim = all(apply(table(as.character(jou)),
                                                  1,
                                                  \(x) (x == 5))),
                     .groups = "drop") |>
    dplyr::filter(senk_van_sam_dim == TRUE) |> 
    dplyr::mutate(senk_van_sam_dim = "Wi!")
}

Rezilta pou lane 2021

1
2
verifikasyon(dat_inisyal = "2021-01-01",
             dat_final = "2021-12-31")

Men rezilta a!

Ane Mwa Verifikasyon
2021 Jan Wi!
2021 Oct Wi!

M pa te ka sezi konsa, si ou ap swiv ak mwen selon rezilta a, sa te rive nan mwa janvye 2021 tou. La, mwen kòmanse wè opòtinite lajan an ap diminye. Men m di non, petèt se mwen ki mal konprann, sanble se pou mwa oktòb yo sèlman li espesyal konsa. Kivledi li parét enpòtan pou mwen ta elaji entèval la pou mwen pran plis lane.

Ann gade ti kras pi lwen

Youn nan bagay ki enteresan lè ou itilize yon langaj pwogramasyon, ou ka re itilize yon kòd oubyen fonksyon ke ou te ekri pou rezoud yon pwoblèm ki sanble ak sa ke li deja rezoud la. La, olye ke mwen itilize yon lane sèlman, mwen ka ogmante entèval la. M deside itilize entèval ant premye janvye lane 2000 ak tranteyen desanm 2030, kèk ane ki pase deja epi, kèk ane ki pou rive (yon entèval piti an konparezon ak 823 lane, jis pou verifikasyon).

1
2
verifikasyon(dat_inisyal = "2000-01-01",
             dat_final = "2030-12-31")

Men rezilta a!
Ane Mwa Verifikasyon
2000 Dec Wi!
2002 Mar Wi!
2003 Aug Wi!
2004 Oct Wi!
2005 Jul Wi!
2006 Dec Wi!
2008 Aug Wi!
2009 May Wi!
2010 Jan Wi!
2010 Oct Wi!
2011 Jul Wi!
2013 Mar Wi!
2014 Aug Wi!
2015 May Wi!
2016 Jan Wi!
2016 Jul Wi!
2017 Dec Wi!
2019 Mar Wi!
2020 May Wi!
2021 Jan Wi!
2021 Oct Wi!
2022 Jul Wi!
2023 Dec Wi!
2024 Mar Wi!
2025 Aug Wi!
2026 May Wi!
2027 Jan Wi!
2027 Oct Wi!
2028 Dec Wi!
2030 Mar Wi!
Sèlman mwa oktòb yo!

Ane Mwa Verifikasyon
2004 Oct Wi!
2010 Oct Wi!
2021 Oct Wi!
2027 Oct Wi!

Se la mwen rann mwen kont, ke si tout fwa mwen ta genyen pou m fè yon gwo lo, ta sanble ke estrateji sa a pa p mache. Nou ka wè ke se pa yon evènman ki ra vreman, nan pwen pou li ta rive chak 800 lane, men chak ane li rive ak mwa ki pote 31 jou yo, epi tou jou yo ka varye. Nan rezilta verifikasyon sa a, nou wè ke nou jwenn sa 30 fwa ant 2000 ak 2030, 4 nan yo se mwa oktòb. Pwochen fwa a, ap nan ane 2027 (veye pou pa tonbe nan kou a!) 😜.

Pi lwen toujou

Jis pou lespri mwen ka libere nèt ak bagay sa a, m di kite m fè yon ti kout je nan mwa oktòb ane 1198 (2021-823).

1
2
# sa a se yon liy bash, dirèkteman nan tèminal òdinatè a, pou yon verifikasyon rapid/dirèk
cal 10 1198
>>>     October 1198      
>>> Su Mo Tu We Th Fr Sa  
>>>              1  2  3  
>>>  4  5  6  7  8  9 10  
>>> 11 12 13 14 15 16 17  
>>> 18 19 20 21 22 23 24  
>>> 25 26 27 28 29 30 31  
>>> 

Li vreman te genyen 5 vandredi ak 5 samdi, men se 4 dimanch li te genyen. An kontrepati, li te genyen tou 5 jedi (tankou mwen te di avan, jou yo ka varye), men li pa te reyini kondisyon pou fenomèn “Bag full of money” an.

Pou fini

Mwen remake ke, si mwa a pote 31 jou , epi premye jou a se yon vandredi, kondisyon yo reyini pou li pote 5 vandredi 5 samdi epi 5 dimanch (ak sekans lojik sa a, m ka elimine tout mwa ki pa pote 31 jou yo epi premye jou a pa tonbe nan vandredi, konsa m ka amelyore pèfòmans ti fonsyon an nan tan ak epas ke li ap okipe nan memwa òdinatè a pandan kakil yo). Nan ka sa a, isit la, li pa parèt nesesè paske eskrip la pran mwens ke yon segond, men li toujou bon pou nou itilize bon pratik lè nou ap pwograme.

An pansan, konsèp “Feng Shui” a egziste nan kilti ak istwa chinwa yo, men ekplikasyon ke mwen jwenn sou entènèt la trè diferan de sa ke moun ki kreye fakenews sa a ta vle fè konprann. Pou moun sa ka enterese, ou ka verifye enfo sou konsèp la sou sit sa a ke mwen jwenn nan premye rechèch mwen fè sou google.

Finalman, ni mwen, ni zanmi’m yo pa fè yon yota anplis a koz de evènman an, men sa te sisite kiryozite m pou mwen te verifye enfo yo epi itilize yon zouti nan pwogramasyon ki te pèmèt mwen otomatize verifikasyon yo, konsa fasilite lavi m nan envestigasyon an.

M espere ke ti istwa a te enterese ou, epi te ede ou wè itilizasyon senp epi pratik ke nou ka fè de yon langaj pwogramasyon nan kotidyen nou. Kòm nou toujou ap rezoud pwoblèm, yon bon zouti ap fè tout diferans pou ogmante pèfòmans ak efikasite lakay nou.

An dènye, men li pa mwens enpòtan: avan ou pataje, eseye verifye 😉

Nou ap rete la pou jodi a, a yon pwochen fwa, kenbe la!

Related