Rã«ã¯ããŸããŸãªæ©èœãæºèŒã§ãã 以äžã«ãå€ãã®äººãç¥ããªããããããªããæãèå³æ·±ããã®ã XNUMX å玹ä»ããŸãã ãã®èšäºã¯ãç§ãä»äºã§äœ¿çšããŠãã R ã®æ©èœã®ããã€ãã«ã€ããŠã®ç§ã®è©±ããããã°ã©ããŒä»²éãã¡ã«ç±ççã«åãå
¥ããããããšãçºèŠããåŸã«æ²èŒãããŸããã ãã®ä»¶ã«ã€ããŠãã§ã«ãã¹ãŠããåç¥ã®å Žåã¯ãæéãç¡é§ã«ããŠç³ãèš³ãããŸããã åæã«ãå
±æãããããšãããå Žåã¯ãã³ã¡ã³ãã§åœ¹ç«ã€ãã®ãæšå¥šããŠãã ããã
ã¹ãã«ããã¯ã¹ã¯æ¬¡ã®ããšãæšå¥šããŸãã å®è·µã³ãŒã¹
ãPythonéçºè ã .ãªãã€ã³ããŒïŒ ãHabrãã®ãã¹ãŠã®èªè ã察象 - ãHabrãããã¢ãŒã·ã§ã³ ã³ãŒãã䜿çšããŠã¹ãã«ããã¯ã¹ ã³ãŒã¹ã«ç»é²ãããš 10 ã«ãŒãã«ã®å²åŒã
ã¹ã€ããæ©èœ
ç§ã¯switch()ãæ¬åœã«å€§å¥œãã§ãã å®éãããã¯ãå¥ã®å€æ°ã®å€ã«åºã¥ããŠå€ãéžæããå Žåã® if ã¹ããŒãã¡ã³ãã®äŸ¿å©ãªçç¥è¡šçŸã§ãã ããã¯ã以åã®éžæã«åºã¥ããŠç¹å®ã®ããŒã¿ ã»ãããèªã¿èŸŒãå¿ èŠãããã³ãŒããäœæãããšãã«ç¹ã«äŸ¿å©ã§ãã ããšãã°ãanimal ãšããååã®å€æ°ãããããã®åç©ãç¬ãç«ããŠãµã®ã®ãããã§ãããã«å¿ããŠç¹å®ã®ããŒã¿ ã»ãããéžæãããå Žåã¯ã次ã®ããã«èšè¿°ããŸãã
ããŒã¿ < â read.csv(
ã¹ã€ãã(åç©ã
"ç¬" = "ç¬ããŒã¿.csv",
"ç«" = "catdata.csv",
"ãŠãµã®" = "ãŠãµã®ããŒã¿.csv")
)
ãã®æ©èœã¯ãXNUMX ã€ä»¥äžã®å ¥åã¡ãã¥ãŒé ç®ã«å¿ããŠç°ãªãããŒã¿ ã»ãããŸãã¯ç°å¢ãã¡ã€ã«ãããŒãããå¿ èŠããã Shiny ã¢ããªã±ãŒã·ã§ã³ã§åœ¹ç«ã¡ãŸãã
RStudio ã®ãããããŒ
ãã®ããã¯ã¯ R ã«é¢ãããã®ã§ã¯ãªããRStudio IDE ã«é¢ãããã®ã§ãã ãã ãããããããŒã¯åžžã«éåžžã«äŸ¿å©ã§ãããã¹ããå ¥åããæéãç¯çŽã§ããŸãã ç§ã®ãæ°ã«å ¥ãã¯ã%>% æŒç®åã® Ctrl+Shift+M ãš <- æŒç®åã® Alt+- ã§ãã
ãã¹ãŠã®ãããããŒã衚瀺ããã«ã¯ãRStudio 㧠Alt+Shift+K ãæŒãã ãã§ãã
ãã¬ãã¯ã¹ããã·ã¥ããŒãããã±ãŒãž
Shiny ããã·ã¥ããŒããããã«èµ·åããå¿ èŠãããå Žåãããã·ã¥ããŒã ããã±ãŒãžãããåªãããã®ã¯ãããŸããã HTML ã·ã§ãŒãã«ãããæäœã§ããããããµã€ãããŒãè¡ãåãç°¡åãã€æéãªãäœæã§ããŸãã ã¿ã€ãã« ããŒã䜿çšããæ©èœããããã¢ããªã±ãŒã·ã§ã³ã®ããŸããŸãªããŒãžã«ã¿ã€ãã« ããŒãé 眮ããããã¢ã€ã³ã³ãGithub äžã®ã·ã§ãŒãã«ãããé»åã¡ãŒã« ã¢ãã¬ã¹ãªã©ãæ®ãããããããšãã§ããŸãã
ãã®ããã±ãŒãžã䜿çšãããšãRmarkdown ã®ãã¬ãŒã ã¯ãŒã¯å ã§äœæ¥ã§ããããããã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ã XNUMX ã€ã® Rmd ãã¡ã€ã«ã«é 眮ããããšãã§ããããšãã° Shinydashboard ã䜿çšããå Žåã®ããã«ã¢ããªã±ãŒã·ã§ã³ãç°ãªããµãŒããŒã UI ãã¡ã€ã«ã«åæ£ããå¿ èŠããªããªããŸãã è€éãªäœæ¥ã«åãçµãåã«ãã·ã³ãã«ãªããã·ã¥ããŒãã®ãããã¿ã€ããäœæããå¿ èŠããããšãã¯ãåžžã« flexdashboard ã䜿çšããŸãã ãã®æ©èœã䜿çšãããšãXNUMX æé以å ã«ãããã¿ã€ããäœæã§ããŸãã
R Shiny ã®é¢æ°ã®èŠæ±ãšæ€èšŒ
R Shiny ã§ã®éçºã¯ãç¹ã«äœãèµ·ãã£ãŠããã®ããç解ããã®ãé£ããå¥åŠãªãšã©ãŒ ã¡ãã»ãŒãžã衚瀺ããç¶ããå Žåãæ··ä¹±ããå¯èœæ§ããããŸãã ããããæéãçµã€ã«ã€ããŠãShiny ã¯éçºããã³æ¹åããããšã©ãŒã®åå ãç解ã§ããããã«ããé¢æ°ãããã«å€ã衚瀺ãããŸãã ãããã£ãŠãäœãèµ·ãã£ãŠããã®ããäžè¬ã«æããã§ãªãå Žåã req() ã¯ããµã€ã¬ã³ãããšã©ãŒã§åé¡ã解決ããŸãã ããã«ãããåã®ã¢ã¯ã·ã§ã³ã«é¢é£ä»ãããã UI èŠçŽ ã衚瀺ã§ããŸãã äŸãæããŠèª¬æããŸããã:
Output$go_button < â Shiny::renderUI({
# åç©å ¥åãéžæãããŠããå Žåã®ã¿ãã¿ã³ã衚瀺ããŸã
ã·ã£ã€ããŒ::req(input$animal)
# 衚瀺ãã¿ã³
Shiny::actionButton("go",
Past("å®æœ", input$animal, "åæ!")
)
})
validate() ã¯ã¬ã³ããªã³ã°åã«ãã¹ãŠããã§ãã¯ããããšãã°ãŠãŒã¶ãŒãééã£ããã¡ã€ã«ãã¢ããããŒããããšãããšã©ãŒ ã¡ãã»ãŒãžãåºåãããªãã·ã§ã³ãæäŸããŸãã
# CSVå ¥åãã¡ã€ã«ãååŸ
inFile < â input$file1
ããŒã¿ < â inFile$datapath
# ç¬ã®å Žåã®ã¿ããŒãã«ãã¬ã³ããªã³ã°ããŸã
å
æ²¢ã®ãã::renderTable({
# ç«ããŠãµã®ã§ã¯ãªããç¬ã®ãã¡ã€ã«ã§ããããšã確èªããŸã
å
æ²¢ã®ãã::æ€èšŒ(
need("ç¬ã®åå" %in%colnames(data)),
ãç¬ã®ååã®åãèŠã€ãããŸãã â æ£ãããã¡ã€ã«ãããŒãããŸããã?ã
)
ããŒã¿
})
ããããã¹ãŠã®æ©èœã®è©³çŽ°æ
å ±
èªåèªèº«ã®èªèšŒæ å ±ãã·ã¹ãã ç°å¢ã«ä¿åãã
èªèšŒæ å ±ã®å ¥åãå¿ èŠãªã³ãŒããå ±æããäºå®ãããå Žåã¯ãã·ã¹ãã ç°å¢ã䜿çšããŠãGithub ãŸãã¯å¥ã®ãµãŒãã¹ã§ç¬èªã®èªèšŒæ å ±ããã¹ãããªãããã«ããŠãã ããã é 眮äŸ:
Sys.setenv(
DSN = "ããŒã¿ããŒã¹å",
UID = "ãŠãŒã¶ãŒID",
PASS = ããã¹ã¯ãŒãã
)
ããã§ãç°å¢å€æ°ã䜿çšããŠãã°ã€ã³ã§ããããã«ãªããŸããã
db < â DBI::dbConnect(
drv = odbc::odbc()ã
dsn = Sys.getenv("DSN"),
uid = Sys.getenv("UID"),
pwd = Sys.getenv("PASS")
)
ãããããªãã¬ãŒãã£ã³ã° ã·ã¹ãã ã§ç°å¢å€æ°ãšããŠçŽæ¥èšå®ãããšãããã«äŸ¿å©ã§ã (ç¹ã«ããŒã¿ãé »ç¹ã«äœ¿çšããå Žå)ã ãã®å Žåããããã¯åžžã«äœ¿çšå¯èœã§ãããã³ãŒãã§æå®ããå¿ èŠã¯ãããŸããã
ã¹ã¿ã€ã©ãŒã䜿çšã㊠Tidyverse ãèªååãã
styler ããã±ãŒãžã¯ã³ãŒããã¯ãªãŒã³ã¢ããããã®ã«åœ¹ç«ã¡ãã³ãŒã ã¹ã¿ã€ã«ã Tidyverse ã«èªåçã«åã蟌ãããã®ãªãã·ã§ã³ãå€æ°ãããŸãã å¿ èŠãªã®ã¯ãåé¡ã®ããã¹ã¯ãªãã㧠styler::style_file() ãå®è¡ããããšã ãã§ãã ãã®ããã±ãŒãžã¯ã秩åºãå埩ããããã«å€ãã®ããšãè¡ããŸã (ãã¹ãŠã§ã¯ãããŸãã)ã
R ããŒã¯ããŠã³ ããã¥ã¡ã³ãã®ãã©ã¡ãŒã¿å
ç¬ã«é¢ããããŸããŸãªäºå®ãåæããçŽ æŽããã R Markdown ããã¥ã¡ã³ããäœæããŸããã ãããŠãç«ã ãã䜿ã£ãŠåãäœæ¥ãããã»ããè¯ãã®ã§ã¯ãªãããšæãã€ããŸãã åé¡ãããŸãããã³ãã³ã XNUMX ã€ã§ç«ã¬ããŒãã®äœæãèªååã§ããŸãã ãããè¡ãã«ã¯ãR ããŒã¯ããŠã³ ããã¥ã¡ã³ãããã©ã¡ãŒã¿åããã ãã§æžã¿ãŸãã
ãããè¡ãã«ã¯ãæå®ããããã¥ã¡ã³ãã® YAML ããããŒã®ãã©ã¡ãŒã¿ãŒãèšå®ãã次ã«å€ãã©ã¡ãŒã¿ãŒãèšå®ããŸãã
â ã¿ã€ãã«: ãåç©åæã
èè
ïŒãããŒã¹ã»ãã¯ãã«ãã£ã
æ¥ä»: ã21 幎 2019 æ XNUMX æ¥ã
åºåïŒ
html_ããã¥ã¡ã³ã:
code_folding: "é衚瀺"
ãã©ã¡ãŒã¿ïŒ
åç©å:
å€: ç¬
éžæè¢ïŒ
-ç¬
-ç«
- ããã
ç 究幎æ°:
å
¥å: ã¹ã©ã€ããŒ
æå°: 2000
æ倧: 2019
ã¹ããã1
ã©ãŠã³ã1
XNUMXæ: "
å€: [2010ã2017] â
ããã§ãããã¥ã¡ã³ã ã³ãŒãå ã®ãã¹ãŠã®å€æ°ã params$animal_name ããã³ params$years_of_study ãšããŠç»é²ã§ããããã«ãªããŸããã 次ã«ãKnit ããããããŠã³ ã¡ãã¥ãŒ (ãŸã㯠Knit_with_parameters()) ã䜿çšããŠããã©ã¡ãŒã¿ãŒãéžæã§ããããã«ããŸãã
æããã«ãã
replacejs ã¯ãçµã¿èŸŒã¿ã® R ã³ãŒããçŽæçãªããã²ãŒã·ã§ã³ãã¹ã©ã€ã ã¡ãã¥ãŒãåããåªãã HTML ãã¬ãŒã³ããŒã·ã§ã³ãäœæã§ããããã±ãŒãžã§ãã HTML ã·ã§ãŒãã«ããã䜿çšãããšãããŸããŸãªã¹ã¿ã€ã« ãªãã·ã§ã³ãåãããã¹ããããã¹ã©ã€ãæ§é ããã°ããäœæã§ããŸãã HTML ã¯ã©ã®ããã€ã¹ã§ãå®è¡ã§ããããããã¬ãŒã³ããŒã·ã§ã³ã¯ãã¹ãŠã®æºåž¯é»è©±ãã¿ãã¬ãããã©ãããããã§éãããšãã§ããŸãã æ å ±é瀺ã¯ãããã±ãŒãžãã€ã³ã¹ããŒã«ããYAML ããããŒã§åŒã³åºãããšã§æ§æã§ããŸãã 以äžã«äŸã瀺ããŸãã
â ã¿ã€ãã«: ãããŒãã« ã¢ããªãã£ã¯ã¹ ãŠãããŒã¹ã®æå
端ãæããã«ããã
èè
ïŒãããŒã¹ã»ãã¯ãã«ãã£ã
åºåïŒ
replacejs::revealjs_presentation:
äžå€®ïŒã¯ã
ãã³ãã¬ãŒã:starwars.html
ããŒã: é»
æ¥ä»: ãHR Analytics Meetup London â 18 幎 2019 æ XNUMX æ¥ã
ãªãœãŒã¹ãã¡ã€ã«:
â ããŒã¹.png
- ãã¹ã¹ã¿ãŒ.png
- ãã³ãã¥ãŒãŠã£.png
- ãã¬ãã¢ã .png
- r2d2-threepio.png
-ã¹ã¿ãŒãŠã©ãŒãº.html
âã¹ã¿ãŒãŠã©ãŒãº.png
âã¹ããŒã ãã«ãŒããŒ.png
-
ãã¬ãŒã³ããŒã·ã§ã³ã®ãœãŒã¹ã³ãŒã
R Shiny ã® HTML ã¿ã°
ã»ãšãã©ã®ããã°ã©ãã¯ãR Shiny ã® HTML ã¿ã°ãæ倧éã«æŽ»çšããŠããŸããã ãã ãããããã¯ããã 110 åã®ã¿ã°ã§ãããHTML é¢æ°ãŸãã¯ã¡ãã£ã¢åçã®ããã®çãåŒã³åºããäœæããããšãã§ããŸãã ããšãã°ãç§ã¯æè¿ãtags$audio ã䜿çšããŠãã¿ã¹ã¯ãå®äºãããšãã«ãŠãŒã¶ãŒã«èŠåãããåå©ããµãŠã³ããåçããŸããã
è³è³ããã±ãŒãž
ãã®ããã±ãŒãžã®äœ¿çšã¯éåžžã«ç°¡åã§ããããŠãŒã¶ãŒã«è³è³ã衚瀺ããããã«å¿ èŠã§ãã å¥åŠã«æããŸããã圌ãã¯å®éã«ãããæ°ã«å ¥ã£ãŠããŸãã
ã¹ãã«ããã¯ã¹ã¯æ¬¡ã®ããšãæšå¥šããŸãã
- XNUMX幎éã®å®è·µã³ãŒã¹
ãç§ã¯ããã®ãŠã§ãéçºè ã§ãã .- ãªã³ã©ã€ã³ã³ãŒã¹
ãC#éçºè ã .- å®è·µäžå¹Žã³ãŒã¹
ã0ããPROãŸã§ã®PHPéçºè ã .
åºæïŒ habr.com