10 เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” R เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบญเบฒเบ”เบˆเบฐเบšเปเปˆเบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบš

10 เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” R เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบญเบฒเบ”เบˆเบฐเบšเปเปˆเบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบš

R เปเบกเปˆเบ™เป€เบ•เบฑเบกเป„เบ›เบ”เป‰เบงเบเบซเบ™เป‰เบฒเบ—เบตเปˆเบซเบฅเบฒเบเบซเบฅเบฒเบ. เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเปƒเบซเป‰เบชเบดเบšเบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ, เป€เบŠเบดเปˆเบ‡เบซเบผเบฒเบเบ„เบปเบ™เบญเบฒเบ”เบˆเบฐเบšเปเปˆเบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบš. เบšเบปเบ”เบ„เบงเบฒเบกเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป„เบ”เป‰เบ›เบฒเบเบปเบ”เบ‚เบถเป‰เบ™เบซเบผเบฑเบ‡เบˆเบฒเบเบ—เบตเปˆเบ‚เป‰เบญเบเป„เบ”เป‰เบ„เบปเป‰เบ™เบžเบปเบšเบงเปˆเบฒเป€เบฅเบทเปˆเบญเบ‡เบ‚เบญเบ‡เบ‚เป‰เบญเบเบเปˆเบฝเบงเบเบฑเบšเบšเบฒเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡ R เบ—เบตเปˆเบ‚เป‰เบญเบเปƒเบŠเป‰เปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบ‚เป‰เบญเบเป„เบ”เป‰เบฎเบฑเบšเบ„เบงเบฒเบกเบเบฐเบ•เบทเบฅเบทเบฅเบปเป‰เบ™เบˆเบฒเบเบ™เบฑเบเบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบญเบทเปˆเบ™เป†. เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเบฎเบนเป‰เบ—เบธเบเบขเปˆเบฒเบ‡เบเปˆเบฝเบงเบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰, เบ‚เป‰เบญเบเบ‚เปเป‚เบ—เบ”เบ—เบตเปˆเป€เบชเบเป€เบงเบฅเบฒเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบˆเบฐเปเบšเปˆเบ‡เบ›เบฑเบ™, เปเบ™เบฐเบ™เปเบฒเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เปƒเบ™เบ„เปเบฒเป€เบซเบฑเบ™.

Skillbox เปเบ™เบฐเบ™เปเบฒ: เบซเบผเบฑเบเบชเบนเบ”เบžเบฒเบเบ›เบฐเบ•เบดเบšเบฑเบ” "เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ Python".

เบžเบงเบเป€เบฎเบปเบฒเป€เบ•เบทเบญเบ™: เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เบญเปˆเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡ "Habr" - เบชเปˆเบงเบ™เบซเบผเบธเบ” 10 rubles เป€เบกเบทเปˆเบญเบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เปƒเบ™เบซเบผเบฑเบเบชเบนเบ” Skillbox เป‚เบ”เบเปƒเบŠเป‰เบฅเบฐเบซเบฑเบ”เบชเบปเปˆเบ‡เป€เบชเบตเบก "Habr".

เบŸเบฑเบ‡เบŠเบฑเบ™เบชเบฐเบซเบผเบฑเบš

เบ‚เป‰เบญเบเบเปเปˆเบกเบฑเบ switch(). เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เบกเบฑเบ™เป€เบ›เบฑเบ™เบ„เปเบฒเบซเบเปเป‰เบ—เบตเปˆเบชเบฐเบ”เบงเบเบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™ if เป€เบกเบทเปˆเบญเป€เบฅเบทเบญเบเบกเบนเบ™เบ„เปˆเบฒเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบกเบนเบ™เบ„เปˆเบฒเบ‚เบญเบ‡เบ•เบปเบงเปเบ›เบญเบทเปˆเบ™. เบ‚เป‰เบญเบเป€เบซเบฑเบ™เบงเปˆเบฒเบ™เบตเป‰เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ‚เป‰เบญเบเบ‚เบฝเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป‚เบซเบฅเบ”เบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™เบชเบฐเป€เบžเบฒเบฐเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เป€เบฅเบทเบญเบเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบ•เบปเบงเปเบ›เบ—เบตเปˆเบกเบตเบŠเบทเปˆเบชเบฑเบ”เปเบฅเบฐเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบฅเบทเบญเบเบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™เบชเบฐเป€เบžเบฒเบฐเป‚เบ”เบเบ‚เบถเป‰เบ™เบเบฑเบšเบงเปˆเบฒเบชเบฑเบ”เป€เบ›เบฑเบ™เบซเบกเบฒ, เปเบกเบง, เบซเบผเบทเบเบฐเบ•เปˆเบฒเบ, เบ‚เบฝเบ™เบ™เบตเป‰:

เบ‚เปเป‰เบกเบนเบ™ < โ€” read.csv(
เบชเบฐเบซเบผเบฑเบš(เบชเบฑเบ”,
"dog" = "dogdata.csv",
"cat" = "catdata.csv",
"rabbit" = "rabbitdata.csv")
)

เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰เบˆเบฐเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เปƒเบ™เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™ Shiny เบ—เบตเปˆเบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป‚เบซเบฅเบ”เบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™ เบซเบผเบทเป„เบŸเบฅเปŒเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเปœเบถเปˆเบ‡ เบซเบผเบทเบซเบผเบฒเบเบฅเบฒเบเบเบฒเบ™เป€เบกเบ™เบนเบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™.

Hotkeys เบชเปเบฒเบฅเบฑเบš RStudio

hack เบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™เบซเบผเบฒเบเบชเปเบฒเบฅเบฑเบš R, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบš RStudio IDE. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, hotkeys เบชเบฐเป€เบซเบกเบตเปเบกเปˆเบ™เบชเบฐเบ”เบงเบเบซเบผเบฒเบ, เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เบฐเบซเบเบฑเบ”เป€เบงเบฅเบฒเปƒเบ™เป€เบงเบฅเบฒเบ›เป‰เบญเบ™เบ‚เปเป‰เบ„เบงเบฒเบก. เบฅเบฒเบเบเบฒเบ™เบ—เบตเปˆเบกเบฑเบเบ‚เบญเบ‡เบ‚เป‰เบญเบเปเบกเปˆเบ™ Ctrl+Shift+M เบชเปเบฒเบฅเบฑเบš %>% operator เปเบฅเบฐ Alt+- เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ <-.

เป€เบžเบทเปˆเบญเป€เบšเบดเปˆเบ‡เบ›เบธเปˆเบกเบ”เปˆเบงเบ™เบ—เบฑเบ‡เปเบปเบ”, เบžเบฝเบ‡เปเบ•เปˆเบเบปเบ” Alt+Shift+K เปƒเบ™ RStudio.

เบŠเบธเบ” flexdashboard

เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบง dashboard Shiny เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบขเปˆเบฒเบ‡เป„เบงเบงเบฒ, เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ”เบตเบเปˆเบงเบฒเบŠเบธเบ” dashboard. เบกเบฑเบ™เบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ—เบฒเบ‡เบฅเบฑเบ” HTML, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบ‡เปˆเบฒเบเปเบฅเบฐเบšเปเปˆเบซเบเบธเป‰เบ‡เบเบฒเบเปƒเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡เปเบ–เบšเบ‚เป‰เบฒเบ‡, เปเบ–เบงเปเบฅเบฐเบ–เบฑเบ™. เบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เปƒเบŠเป‰เปเบ–เบšเบซเบปเบงเบ‚เปเป‰, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบงเบฒเบ‡เบกเบฑเบ™เป„เบงเป‰เปƒเบ™เบซเบ™เป‰เบฒเบ•เปˆเบฒเบ‡เป†เบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™, เบญเบญเบเบˆเบฒเบเป„เบญเบ„เบญเบ™, เบ—เบฒเบ‡เบฅเบฑเบ”เปƒเบ™ Github, เบ—เบตเปˆเบขเบนเปˆเบญเบตเป€เบกเบงเปเบฅเบฐเบญเบทเปˆเบ™เป†.

เปเบžเบเป€เบเบ”เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบ‚เบญเบšเบ‚เบญเบ‡ Rmarkdown, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบงเบฒเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เป„เบŸเบฅเปŒ Rmd เบ”เบฝเบง, เปเบฅเบฐเบšเปเปˆเปเบˆเบเบขเบฒเบเบกเบฑเบ™เปƒเบ™เบ—เบปเปˆเบงเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปเบฅเบฐเป„เบŸเบฅเปŒ UI เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบšเป€เบฎเบฑเบ”, เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ shinydashboard. เบ‚เป‰เบญเบเปƒเบŠเป‰ flexdashboard เบ—เบธเบเบ„เบฑเป‰เบ‡เบ—เบตเปˆเบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบปเบงเปเบšเบš dashboard เบ‡เปˆเบฒเบเป†เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™. เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบปเป‰เบ™เปเบšเบšเบžเบฒเบเปƒเบ™เบซเบ™เบถเปˆเบ‡เบŠเบปเปˆเบงเป‚เบกเบ‡.

req เปเบฅเบฐ validate เบŸเบฑเบ‡เบŠเบฑเบ™เปƒเบ™ R Shiny

เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเปƒเบ™ R Shiny เบชเบฒเบกเบฒเบ”เบชเบฑเบšเบชเบปเบ™, เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบทเบšเบ•เปเปˆเป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบ„เบงเบฒเบกเบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเปเบ›เบเบ›เบฐเบซเบผเบฒเบ”เบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบเบฒเบเบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™. เปเบ•เปˆเป€เบกเบทเปˆเบญเป€เบงเบฅเบฒเบœเปˆเบฒเบ™เป„เบ›, Shiny เบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบฅเบฐเบ›เบฑเบšเบ›เบธเบ‡, เบซเบ™เป‰เบฒเบ—เบตเปˆเบซเบผเบฒเบเบเบงเปˆเบฒเปเบฅเบฐเบซเบผเบฒเบเบ›เบฒเบเบปเบ”เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰เบ—เบตเปˆเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบ‚เบปเป‰เบฒเปƒเบˆเบชเบฒเป€เบซเบ”เบ‚เบญเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, req() เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ” "เบ‡เบฝเบš", เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบกเบฑเบ™เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เบšเปเปˆเบˆเบฐเปเบˆเป‰เบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™. เบกเบฑเบ™เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบš UI เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ. เบ‚เปเบญเบฐเบ—เบดเบšเบฒเบเบ”เป‰เบงเบเบ•เบปเบงเบขเปˆเบฒเบ‡:

output$go_button < โ€” เป€เบซเบผเบทเป‰เบญเบก::renderUI({

# เบ›เบธเปˆเบกเบชเบฐเปเบ”เบ‡เบžเบฝเบ‡เปเบ•เปˆเบ–เป‰เบฒเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบชเบฑเบ”เป„เบ”เป‰เบ–เบทเบเป€เบฅเบทเบญเบ

เป€เบซเบผเบทเป‰เบญเบก ::req(เบ›เป‰เบญเบ™ $เบชเบฑเบ”)

# เบ›เบธเปˆเบกเบชเบฐเปเบ”เบ‡

เป€เบซเบผเบทเป‰เบญเบก ::actionButton("เป„เบ›",
paste("เบเบฒเบ™เบ›เบฐเบžเบถเบ”", input$animal, "เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐ!")
)
})

validate() เบเบงเบ”เป€เบšเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบชเบฐเปเบ”เบ‡เบœเบปเบ™เปเบฅเบฐเปƒเบซเป‰เบ—เปˆเบฒเบ™เบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบˆเบฐเบžเบดเบกเบ‚เปเป‰เบ„เบงเบฒเบกเบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ” - เบ•เบปเบงเบขเปˆเบฒเบ‡, เบœเบนเป‰เปƒเบŠเป‰เบญเบฑเบšเป‚เบซเบฅเบ”เป„เบŸเบฅเปŒเบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡:

# เบฎเบฑเบšเป„เบŸเบฅเปŒเบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™ csv

inFile < โ€” input$file1
data < โ€” เปƒเบ™File$datapath

# render เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบžเบฝเบ‡เปเบ•เปˆเบ–เป‰เบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบซเบกเบฒ

เป€เบซเบผเบทเป‰เบญเบก::renderTable({
# เบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบŸเบฅเปŒเบซเบกเบฒ, เบšเปเปˆเปเบกเปˆเบ™เปเบกเบงเบซเบผเบทเบเบฐเบ•เปˆเบฒเบ
เป€เบซเบผเบทเป‰เบญเบก ::validate(
เบ•เป‰เบญเบ‡เบเบฒเบ™("เบŠเบทเปˆเปเบฒ" %in%colnames(data)),
"เบšเปเปˆเบžเบปเบšเบ–เบฑเบ™เบŠเบทเปˆเบซเบกเบฒ - เป€เบˆเบปเป‰เบฒเป‚เบซเบฅเบ”เป„เบŸเบฅเปŒเบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบšเป?"
)

เบ‚เปเป‰เบกเบนเบ™
})

เบ‚เปเป‰เบกเบนเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบšเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบฑเบ‡เปเบปเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰ เบชเบฒเบกเบฒเบ”เบžเบปเบšเป„เบ”เป‰เบ—เบตเปˆเบ™เบตเป‰.

เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเปเบฒเบ•เบปเบงเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบ—เปˆเบฒเบ™เป€เบญเบ‡เปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ‚เบญเบ‡เบฅเบฐเบšเบปเบš

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเปเบšเปˆเบ‡เบ›เบฑเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบ—เปˆเบฒเบ™เปƒเบชเปˆเบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเปเบฒเบ•เบปเบง, เปƒเบŠเป‰เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เป€เบ›เบฑเบ™เป€เบˆเบปเป‰เบฒเบžเบฒเบšเบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเปเบฒเบ•เบปเบงเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡เปƒเบ™ Github เบซเบผเบทเบšเปเบฅเบดเบเบฒเบ™เบญเบทเปˆเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡เบเบฒเบ™เบˆเบฑเบ”เบงเบฒเบ‡:

Sys.setenv(
DSN = "เบŠเบทเปˆเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™",
UID = "เบฅเบฐเบซเบฑเบ”เบœเบนเป‰เปƒเบŠเป‰",
PASS = "เบฅเบฐเบซเบฑเบ”เบœเปˆเบฒเบ™"
)

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเบชเบนเปˆเบฅเบฐเบšเบปเบšเป‚เบ”เบเปƒเบŠเป‰เบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก:

db < โ€” DBI::dbConnect(
drv = odbc::odbc(),
dsn = Sys.getenv("DSN"),
uid = Sys.getenv("UID"),
pwd = Sys.getenv("PASS")
)

เบกเบฑเบ™เบชเบฐเบ”เบงเบเบเบงเปˆเบฒ (เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบ–เป‰เบฒเบ—เปˆเบฒเบ™เปƒเบŠเป‰เบ‚เปเป‰เบกเบนเบ™เป€เบฅเบทเป‰เบญเบเป†) เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบžเบงเบเบกเบฑเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเป‚เบ”เบเบเบปเบ‡เปƒเบ™เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบžเบงเบเป€เบ‚เบปเบฒเบˆเบฐเบกเบตเบขเบนเปˆเบชเบฐเป€เบซเบกเบตเปเบฅเบฐเบ—เปˆเบฒเบ™เบˆเบฐเบšเปเปˆเบ•เป‰เบญเบ‡เบฅเบฐเบšเบธเบžเบงเบเบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”.

เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เป€เบ›เบฑเบ™โ€‹เบฅเบฐโ€‹เบšเบฝเบšโ€‹เบฎเบฝเบšโ€‹เบฎเป‰เบญเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เบ—เบตเปˆโ€‹เบกเบต stylerโ€‹

เบŠเบธเบ” styler เบชเบฒเบกเบฒเบ”เบŠเปˆเบงเบเบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เบ„เบงเบฒเบกเบชเบฐเบญเบฒเบ”เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบ—เปˆเบฒเบ™; เบกเบฑเบ™เบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบซเบผเบฒเบเบขเปˆเบฒเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เปเบฒเป€เบญเบปเบฒเบฎเบนเบšเปเบšเบšเบฅเบฐเบซเบฑเบ”เป„เบ›เบชเบนเปˆเบ„เบงเบฒเบกเบเบฐเบ•เบทเบฅเบทเบฅเบปเป‰เบ™เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบชเบดเปˆเบ‡เบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เปเบกเปˆเบ™เปเบฅเปˆเบ™ styler::style_file() เปƒเบ™เบชเบฐเบ„เบฃเบดเบšเบ—เบตเปˆเบกเบตเบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบ—เปˆเบฒเบ™. เบŠเบธเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบˆเบฐเป€เบฎเบฑเบ”เบซเบผเบฒเบเบขเปˆเบฒเบ‡ (เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™เบ—เบธเบเบขเปˆเบฒเบ‡) เป€เบžเบทเปˆเบญเบŸเบทเป‰เบ™เบŸเบนเบ„เปเบฒเบชเบฑเปˆเบ‡.

Parameterizing R Markdown เป€เบญเบเบฐเบชเบฒเบ™

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เป„เบ”เป‰เบชเป‰เบฒเบ‡เป€เบญเบเบฐเบชเบฒเบ™ R Markdown เบ—เบตเปˆเบเบดเปˆเบ‡เปƒเบซเบเปˆเบ—เบตเปˆเบ—เปˆเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบ‚เปเป‰เป€เบ—เบฑเบ”เบˆเบดเบ‡เบ•เปˆเบฒเบ‡เป†เบเปˆเบฝเบงเบเบฑเบšเบซเบกเบฒ. เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเบฑเบšเบ—เปˆเบฒเบ™เบงเปˆเบฒเบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบ”เบตเบเบงเปˆเบฒเบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบ”เบฝเบงเบเบฑเบ™, เปเบ•เปˆเบงเปˆเบฒเบžเบฝเบ‡เปเบ•เปˆเบเบฑเบšเปเบกเบง. เบšเปเปˆเบกเบตเบšเบฑเบ™เบซเบฒ, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบเบฒเบ™เบชเป‰เบฒเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™ cat เบ”เป‰เบงเบเบ„เปเบฒเบชเบฑเปˆเบ‡เบ”เบฝเบง. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เป€เบญเบเบฐเบชเบฒเบ™ R markdown เบ‚เบญเบ‡เบ—เปˆเบฒเบ™.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เป‚เบ”เบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบซเบปเบง YAML เปƒเบ™เป€เบญเบเบฐเบชเบฒเบ™เบ—เบตเปˆเบฅเบฐเบšเบธ, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเปเบฒเบ™เบปเบ”เบ„เปˆเบฒเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™.

- เบซเบปเบงโ€‹เบ‚เปเป‰โ€‹: "เบงเบดโ€‹เป€เบ„เบฒเบฐโ€‹เบชเบฑเบ”โ€‹"
เบœเบนเป‰เบ‚เบฝเบ™: "Keith McNulty"
เบงเบฑเบ™เบ—เบต: "21 เบกเบตเบ™เบฒ 2019"
เบœเบปเบ™เบœเบฐเบฅเบดเบ”:
html_document:
code_folding: "เป€เบŠเบทเปˆเบญเบ‡"
เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™:
เบŠเบทเปˆเบชเบฑเบ”:
เบ„เปˆเบฒ: เบซเบกเบฒ
เบ—เบฒเบ‡เป€เบฅเบทเบญเบ:
โ€” เบซเบกเบฒ
โ€”เปเบกเบง
โ€” เบเบฐเบ•เปˆเบฒเบ
เบ›เบตเบ‚เบญเบ‡เบเบฒเบ™เบชเบถเบเบชเบฒ:
เบงเบฑเบ”เบชเบฐเบ”เบธเบ›เป‰เบญเบ™: เบ•เบปเบงเป€เบฅเบทเปˆเบญเบ™
เบ‚เบฑเป‰เบ™เบ•เปˆเบณ: 2000
เบชเบนเบ‡เบชเบธเบ”เบ—เบตเปˆเป€เบ„เบ: 2019
เบ‚เบฑเป‰เบ™เบ•เบญเบ™: 1
เบฎเบญเบš: 1
Sep: "
เบกเบนเบ™เบ„เปˆเบฒ: [2010, 2017] โ€”

เบ•เบญเบ™เบ™เบตเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบ•เบปเบงเปเบ›เบ—เบฑเบ‡เปเบปเบ”เปƒเบ™เบฅเบฐเบซเบฑเบ”เป€เบญเบเบฐเบชเบฒเบ™เป€เบ›เบฑเบ™ params$animal_name เปเบฅเบฐ params$years_of_study. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ™เปเบฒเปƒเบŠเป‰เป€เบกเบ™เบนเป€เบฅเบทเปˆเบญเบ™เบฅเบปเบ‡ Knit (เบซเบผเบท knit_with_parameters()) เปเบฅเบฐเบชเบฒเบกเบฒเบ”เป€เบฅเบทเบญเบเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบต.

10 เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” R เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบญเบฒเบ”เบˆเบฐเบšเปเปˆเบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบš

เป€เบ›เบตเบ”เป€เบœเบตเบ

Revealjs เปเบกเปˆเบ™เบŠเบธเบ”เบ—เบตเปˆเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบเบฒเบ™เบ™เปเบฒเบชเบฐเป€เบซเบ™เบต HTML เบ—เบตเปˆเบเบดเปˆเบ‡เปƒเบซเบเปˆเบ—เบตเปˆเบกเบตเบฅเบฐเบซเบฑเบ” R เบ—เบตเปˆเบกเบตเบ•เบปเบงเบ•เบปเบ™, เบเบฒเบ™เบ™เปเบฒเบ—เบฒเบ‡เปเบšเบšเบ‡เปˆเบฒเบเบ”เบฒเบเปเบฅเบฐเป€เบกเบ™เบนเป€เบฅเบทเปˆเบญเบ™. เบ—เบฒเบ‡เบฅเบฑเบ” HTML เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบชเบฐเป„เบฅเป‰เปเบšเบšเบŠเป‰เบญเบ™เบเบฑเบ™เป„เบ”เป‰เบขเปˆเบฒเบ‡เบงเปˆเบญเบ‡เป„เบงเบ”เป‰เบงเบเบ•เบปเบงเป€เบฅเบทเบญเบเบเบฒเบ™เบˆเบฑเบ”เบฎเบนเบšเปเบšเบšเบ•เปˆเบฒเบ‡เป†. เบ”เบต, HTML เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบญเบธเบ›เบฐเบเบญเบ™เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเบชเบฒเบกเบฒเบ”เบ–เบทเบเป€เบ›เบตเบ”เบขเบนเปˆเปƒเบ™เบ—เบธเบเป‚เบ—เบฅเบฐเบชเบฑเบš, เปเบ—เบฑเบšเป€เบฅเบฑเบ”เบซเบผเบทเปเบฅเบฑเบšเบ—เบฑเบญเบš. เบเบฒเบ™เป€เบ›เบตเบ”เป€เบœเบตเบเบ‚เปเป‰เบกเบนเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป‚เบ”เบเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เปเบžเบฑเบเป€เบเบฑเบ”เปเบฅเบฐเป‚เบ—เบซเบฒเบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบชเปˆเบงเบ™เบซเบปเบง YAML. เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡:

โ€” เบซเบปเบงโ€‹เบ‚เปเป‰โ€‹: โ€œExporing the Edge of the People Analytics Universeโ€
เบœเบนเป‰เบ‚เบฝเบ™: "Keith McNulty"
เบœเบปเบ™เบœเบฐเบฅเบดเบ”:
Revealjs::revealjs_presentation:
เบชเบนเบ™: เปเบกเปˆเบ™
เปเบกเปˆเปเบšเบš:starwars.html
เบซเบปเบงเบ‚เปเป‰: เบชเบตเบ”เปเบฒ
เบงเบฑเบ™เบ—เบต: โ€œHR Analytics Meetup London โ€“ 18 เบกเบตเบ™เบฒ 2019โ€
resource_files:
โ€” darth.png
- deathstar.png
- hanchewy.png
- millennium.png
- r2d2-threepio.png
-starwars.html
โ€”starwars.png
โ€”stormtrooper.png
-

เบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เบเบฒเบ™เบ™เปเบฒเบชเบฐเป€เบซเบ™เบต เบ›เบฐเบเบฒเบ”เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰, เปเบฅเบฐเบ•เบปเบ™เป€เบญเบ‡rpubs.com/keithmcnulty/hr_meetup_london'>เบเบฒเบ™เบ™เปเบฒเบชเบฐเป€เบซเบ™เบต - เบ—เบตเปˆเบ™เบตเป‰.

10 เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” R เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบญเบฒเบ”เบˆเบฐเบšเปเปˆเบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบš

HTML Tags เปƒเบ™ R Shiny

เบœเบนเป‰เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบชเปˆเบงเบ™เปƒเบซเบเปˆเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบ—เบตเปˆเบ‚เบญเบ‡เปเบ—เบฑเบ HTML เบ—เบตเปˆ R Shiny เบกเบต. เปเบ•เปˆเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบกเบตเบžเบฝเบ‡เปเบ•เปˆ 110 tags, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡เบเบฒเบ™เป‚เบ—เบชเบฑเป‰เบ™เบชเปเบฒเบฅเบฑเบšเบŸเบฑเบ‡เบŠเบฑเบ™ HTML เบซเบผเบทเบเบฒเบ™เบซเบผเบดเป‰เบ™เบชเบทเปˆ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ‚เป‰เบญเบเบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰เป„เบ”เป‰เปƒเบŠเป‰ tags$audio เป€เบžเบทเปˆเบญเบซเบผเบดเป‰เบ™เบชเบฝเบ‡ "เป„เบŠเบŠเบฐเบ™เบฐ" เบ—เบตเปˆเป€เบ•เบทเบญเบ™เบœเบนเป‰เปƒเบŠเป‰เป€เบกเบทเปˆเบญเบงเบฝเบเบ‡เบฒเบ™เบชเปเบฒเป€เบฅเบฑเบ”.

เบเบฒเบ™เบชเบฑเบ™เบฅเบฐเป€เบชเบตเบ™เบเบฒเบ™เบซเบธเป‰เบกเบซเปเปˆ

เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเบธเบ”เบ™เบตเป‰เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบเบซเบผเบฒเบ, เปเบ•เปˆเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบชเบฐเปเบ”เบ‡เบ„เบงเบฒเบกเบŠเบปเบกเป€เบŠเบตเบเบ•เปเปˆเบœเบนเป‰เปƒเบŠเป‰. เบกเบฑเบ™เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเปเบ›เบ, เปเบ•เปˆเบ•เบปเบงเบˆเบดเบ‡เปเบฅเป‰เบงเบžเบงเบเป€เบ‚เบปเบฒเบกเบฑเบเบกเบฑเบ™.

10 เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” R เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบญเบฒเบ”เบˆเบฐเบšเปเปˆเบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบš

Skillbox เปเบ™เบฐเบ™เปเบฒ:

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™