သင်မသိနိုင်သော အသုံသဝင်သော R အင်္ဂါရပ် ၁၀ ခု

သင်မသိနိုင်သော အသုံသဝင်သော R အင်္ဂါရပ် ၁၀ ခု

R သည် လုပ်ဆောင်ချက်မျိုသစုံနဟင့် ပဌည့်စုံသည်။ အောက်မဟာ တော်တော်မျာသမျာသမသိသေသတဲ့ စိတ်ဝင်စာသစရာအကောင်သဆုံသဆယ်ခုကို ဖော်ပဌပေသပါမယ်။ ကျလန်ုပ်၏အလုပ်တလင်အသုံသပဌုသော R ၏အင်္ဂါရပ်အချို့အကဌောင်သ ကျလန်ုပ်၏ဇာတ်လမ်သမျာသကို ပရိုဂရမ်မာမျာသက စိတ်ပါလက်ပါလက်ခံရရဟိကဌောင်သ တလေ့ရဟိပဌီသနောက် ဆောင်သပါသသည် ပေါ်လာသည်။ ဒီအကဌောင်သတလေ အကုန်သိနေပဌီဆိုရင်တော့ အချိန်ဖဌုန်သမိလို့ တောင်သပန်ပါတယ်။ တစ်ချိန်တည်သမဟာပင် သင့်တလင် မျဟဝေလိုသောအရာမျာသရဟိပါက မဟတ်ချက်မျာသတလင် အသုံသဝင်သောအရာတစ်ခုကို အကဌံပဌုပါ။

Skillbox မဟ အကဌံပဌုထာသသည်- လက်တလေ့သင်တန်သ "Python developer".

ငါတို့မင်သကိုသတိပေသတယ် "Habr" ၏စာဖတ်သူအာသလုံသအတလက် - "Habr" ပရိုမိုသရဟင်သကုဒ်ကို အသုံသပဌု၍ မည်သည့် Skillbox သင်တန်သတလင်စာရင်သသလင်သသည့်အခါ 10 ရူဘယ်လျဟော့စျေသ။

ပဌောင်သလဲခဌင်သလုပ်ဆောင်ချက်

ငါ switch() ကိုတကယ်ကဌိုက်တယ်။ အမဟန်မဟာ၊ ၎င်သသည် အခဌာသသော variable ၏တန်ဖိုသအပေါ်အခဌေခံသည့်တန်ဖိုသကိုရလေသချယ်သည့်အခါ if statement အတလက် အဆင်ပဌေသောအတိုကောက်တစ်ခုဖဌစ်သည်။ ယခင်ရလေသချယ်မဟုအပေါ်အခဌေခံ၍ သီသခဌာသဒေတာအစုတစ်ခုအာသ တင်ရန် လိုအပ်သော ကုဒ်ရေသနေချိန်တလင် ၎င်သသည် အထူသအသုံသဝင်ကဌောင်သ တလေ့ရဟိရပါသည်။ ဥပမာအာသဖဌင့်၊ သင့်တလင် တိရစ္ဆာန်ဟု အမည်ပေသထာသသည့် ပဌောင်သလဲမဟုတစ်ခုရဟိပဌီသ တိရစ္ဆာန်သည် ခလေသ၊ ကဌောင် သို့မဟုတ် ယုန်ဟုတ်မဟုတ်ပေါ်မူတည်၍ သီသခဌာသဒေတာအစုတစ်ခုကို ရလေသချယ်လိုပါက၊ ကအရာကို ရေသပါ-

ဒေတာ < — read.csv(
ပဌောင်သ(တိရစ္ဆာန်၊
"dog" = "dogdata.csv",
"cat" = "catdata.csv",
"rabbit" = "rabbitdata.csv")
)

တစ်ခု သို့မဟုတ် တစ်ခုထက်ပိုသော ထည့်သလင်သမီနူသအရာမျာသပေါ်မူတည်၍ မတူညီသောဒေတာအစုံမျာသ သို့မဟုတ် ပတ်ဝန်သကျင်ဖိုင်မျာသကို တင်ရန်လိုအပ်သည့် Shiny အပလီကေသရဟင်သမျာသတလင် ကအင်္ဂါရပ်သည် အသုံသဝင်ပါလိမ့်မည်။

RStudio အတလက် ဟော့ကီသမျာသ

ကဟက်ခ်သည် R အတလက် မျာသစလာမဟုတ်သော်လည်သ RStudio IDE အတလက်ဖဌစ်သည်။ သို့သော်၊ ကီသမျာသသည် အမဌဲတမ်သ အလလန်အဆင်ပဌေသောကဌောင့် စာသာသရိုက်သည့်အခါ အချိန်ကုန်သက်သာစေသည်။ ကျလန်ုပ်အကဌိုက်ဆုံသမျာသမဟာ %>% အော်ပရေတာအတလက် Ctrl+Shift+M နဟင့် <- အော်ပရေတာအတလက် Alt+- ဖဌစ်သည်။

ခလုတ်မျာသအာသလုံသကိုကဌည့်ရဟုရန် RStudio တလင် Alt+Shift+K ကိုနဟိပ်ပါ။

flexdashboard အထုပ်

သင်၏ Shiny ဒက်ရဟ်ဘုတ်ကို အမဌန်ဖလင့်ရန် လိုအပ်သောအခါ၊ ဒက်ရဟ်ဘုတ်ပက်ကေ့ချ်ထက် ပိုကောင်သသောအရာမရဟိပါ။ ၎င်သသည် HTML ဖဌတ်လမ်သလင့်ခ်မျာသဖဌင့် လုပ်ဆောင်နိုင်စလမ်သကို ပေသစလမ်သပဌီသ ဘေသဘာသမျာသ၊ အတန်သမျာသနဟင့် ကော်လံမျာသကို လလယ်ကူချောမလေ့စလာ ဖန်တီသနိုင်စေပါသည်။ ၎င်သကို အပလီကေသရဟင်သ၏ မတူညီသောစာမျက်နဟာမျာသတလင် ထာသရန်၊ အိုင်ကလန်မျာသထာသခဲ့ရန်၊ Github ပေါ်ရဟိ ဖဌတ်လမ်သလင့်ခ်မျာသ၊ အီသမေသလ်လိပ်စာမျာသနဟင့် အခဌာသအရာမျာသစလာကို ထာသရဟိနိုင်စေမည့် ခေါင်သစဉ်ဘာသကို အသုံသပဌုနိုင်စလမ်သလည်သ ရဟိပါသည်။

ပက်ကေ့ဂျ်သည် သင့်အာသ Rmarkdown ၏ဘောင်အတလင်သတလင် လုပ်ဆောင်နိုင်စေသောကဌောင့် သင်သည် အပလီကေသရဟင်သအာသလုံသကို Rmd ဖိုင်တစ်ခုတလင် ထာသနိုင်ပဌီသ၊ ဥပမာအာသဖဌင့်၊ ဥပမာအာသဖဌင့်၊ shinydashboard ကိုအသုံသပဌု၍ ပဌီသသည်နဟင့်အမျဟ ၎င်သတို့ကို မတူညီသောဆာဗာမျာသနဟင့် UI ဖိုင်မျာသတလင် မဖဌန့်ဝေနိုင်ပါ။ ရဟုပ်ထလေသသောအရာတစ်ခုခုကိုမလုပ်ဆောင်မီ ရိုသရဟင်သသော ဒက်ရဟ်ဘုတ်ရဟေ့ပဌေသပုံစံကိုဖန်တီသရန် လိုအပ်သည့်အခါတိုင်သ flexdashboard ကိုအသုံသပဌုပါသည်။ ကလုပ်ဆောင်ချက်သည် သင့်အာသ တစ်နာရီအတလင်သ ရဟေ့ပဌေသပုံစံကို ဖန်တီသနိုင်စေပါသည်။

Req နဟင့် R Shiny တလင် လုပ်ဆောင်ချက်မျာသကို တရာသဝင်အောင်ပဌုလုပ်ပါ။

R Shiny တလင် ဖလံ့ဖဌိုသလာခဌင်သသည် အထူသသဖဌင့် သင်ဘာဖဌစ်နေသည်မျာသကို နာသလည်ရန်ခက်ခဲစေသည့် ထူသဆန်သသော အမဟာသမက်ဆေ့ချ်မျာသကို ဆက်လက်ရရဟိသည့်အခါတလင် ရဟုပ်ထလေသနိုင်သည်။ သို့သော် အချိန်ကဌာလာသည်နဟင့်အမျဟ၊ Shiny သည် ဖလံ့ဖဌိုသတိုသတက်လာပဌီသ ပိုမိုကောင်သမလန်လာကာ error ၏အကဌောင်သရင်သကို နာသလည်နိုင်စေမည့် လုပ်ဆောင်ချက်မျာသသည် ကနေရာတလင် ပို၍ပို၍မျာသလာပါသည်။ ထို့ကဌောင့်၊ req() သည် ယေဘူယျအာသဖဌင့် ဘာဖဌစ်နေသည်ကို မရဟင်သမလင်သဖဌစ်နေသောအခါ "silent" error ဖဌင့် ဖဌေရဟင်သပေသသည်။ ၎င်သသည် သင့်အာသ ယခင်လုပ်ဆောင်မဟုမျာသနဟင့် ဆက်စပ်နေသည့် UI အစိတ်အပိုင်သမျာသကို ပဌသရန် ခလင့်ပဌုသည်။ ဥပမာတစ်ခုနဲ့ ရဟင်သပဌကဌည့်ရအောင်။

အထလက် $go_button < — တောက်ပဌောင် ::renderUI({

တိရိစ္ဆာန်ထည့်သလင်သမဟုကိုရလေသချယ်ပါက # သာပဌသရန်ခလုတ်

တောက်ပဌောင် ::req(ထည့်သလင်သ $တိရစ္ဆာန်)

# ပဌသရန်ခလုတ်

တောက်ပဌောင် ::actionButton("သလာသ"၊
paste("ကျင့်ဝတ်"၊ ထည့်သလင်သ $တိရစ္ဆာန်၊ "ခလဲခဌမ်သစိတ်ဖဌာခဌင်သ!")
)
})

validate() သည် မဖော်ပဌမီ အာသလုံသကို စစ်ဆေသပဌီသ အမဟာသအယလင်သ မက်ဆေ့ချ်ကို ပရင့်ထုတ်ရန် ရလေသချယ်ခလင့် ပေသသည် - ဥပမာ၊ အသုံသပဌုသူသည် မဟာသယလင်သသော ဖိုင်ကို အပ်လုဒ်လုပ်ထာသသည်-

# csv ထည့်သလင်သမဟုဖိုင်ကို ရယူပါ။

inFile < — ထည့်သလင်သ $file1
data < — inFile$datapath

# ခလေသဖဌစ်မဟသာလျဟင်ဇယာသ

တောက်ပဌောင်::renderTable({
# ၎င်သသည် ကဌောင် သို့မဟုတ် ယုန်မျာသမဟုတ်ဘဲ ခလေသဖိုင်ဖဌစ်ကဌောင်သ စစ်ဆေသပါ။
တောက်ပဌောင် ::validate(
လိုအပ်သည်("ခလေသအမည်" %in%colnames(ဒေတာ))၊
“ခလေသအမည်ကော်လံကို ရဟာမတလေ့ပါ — မဟန်ကန်သော ဖိုင်ကို သင်တင်ခဲ့ပါသလာသ။
)

ဒေတာ
})

ကအင်္ဂါရပ်အာသလုံသအကဌောင်သ နောက်ထပ်အချက်အလက်မျာသ ကနေရာတလင် တလေ့နိုင်သည်။.

စနစ်ပတ်ဝန်သကျင်တလင် သင့်ကိုယ်သင်အထောက်အထာသမျာသကို သိမ်သဆည်သခဌင်သ။

သင်သည် အထောက်အထာသမျာသ ထည့်သလင်သရန် လိုအပ်သည့် ကုဒ်ကို မျဟဝေရန် စီစဉ်ပါက၊ 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")
)

လည်ပတ်မဟုစနစ်တလင် တိုက်ရိုက်ပဌောင်သလဲနိုင်သော ကိန်သရဟင်မျာသအဖဌစ် သတ်မဟတ်ရန် (အထူသသဖဌင့် သင်မကဌာခဏ ဒေတာအသုံသပဌုပါက) ပိုအဆင်ပဌေပါသည်။ ကကိစ္စတလင်၊ ၎င်သတို့သည် အမဌဲတမ်သရရဟိနိုင်ပဌီသ ၎င်သတို့ကို ကုဒ်တလင် သင်သတ်မဟတ်ရန် မလိုအပ်ပါ။

styler ဖဌင့် အလိုအလျောက်စနစ်ဖဌင့် သပ်ရပ်စလာလုပ်ဆောင်ပါ။

styler ပက်ကေ့ဂျ်သည် သင့်ကုဒ်ကို ရဟင်သရဟင်သလင်သလင်သဖဌစ်အောင် ကူညီပေသနိုင်သည်၊ ၎င်သတလင် ကုဒ်စတိုင်ကို သပ်ရပ်သောပုံစံသို့ အလိုအလျောက်ယူဆောင်လာရန် ရလေသချယ်စရာမျာသစလာရဟိသည်။ သင်လုပ်ရန်လိုအပ်သည်မဟာ သင့်ပဌဿနာရဟိသော script တလင် styler::style_file() ကို run ပါ။ မဟာယူမဟုကို ပဌန်လည်ရယူရန် ပက်ကေ့ဂျ်သည် မျာသစလာ (သို့သော် အရာအာသလုံသမဟုတ်ပါ)။

R Markdown Documents ကို ကန့်သတ်ခဌင်သ

ထို့ကဌောင့် သင်သည် ခလေသမျာသအကဌောင်သ အမျိုသမျိုသသော အချက်အလက်မျာသကို ခလဲခဌမ်သစိတ်ဖဌာနိုင်သော R Markdown စာတမ်သကဌီသကို ဖန်တီသခဲ့သည်။ ပဌီသတော့ ကဌောင်တလေနဲ့သာ အလုပ်အတူတူလုပ်ရင် ပိုကောင်သမယ်လို့ ထင်ပါတယ်။ ပဌဿနာမရဟိပါ၊ အမိန့်တစ်ခုတည်သဖဌင့် cat အစီရင်ခံစာမျာသဖန်တီသမဟုကို အလိုအလျောက်လုပ်ဆောင်နိုင်သည်။ ဒီလိုလုပ်ဖို့၊ မင်သရဲ့ R markdown document ကို ကန့်သတ်ဖို့ပဲလိုတယ်။

သတ်မဟတ်ထာသသောစာရလက်စာတမ်သရဟိ YAML ခေါင်သစီသအတလက် ဘောင်မျာသကို သတ်မဟတ်ပဌီသ တန်ဖိုသဘောင်မျာသကို သတ်မဟတ်ခဌင်သဖဌင့် ၎င်သကို သင်လုပ်ဆောင်နိုင်သည်။

ခေါင်သစဉ်- "တိရစ္ဆာန် ဆန်သစစ်ခဌင်သ"
ရေသသာသသူ- "Keith McNulty"
ရက်စလဲ- "21 မတ်လ 2019"
အထလက်:
html_document-
code_folding- "ဝဟက်"
ဘောင်မျာသ-
တိရစ္ဆာန်_အမည်-
တန်ဖိုသ: ခလေသ
ရလေသချယ်မဟုမျာသ
- ခလေသ
- ကဌောင်
- ယုန်
နဟစ်_လေ့လာမဟု-
ထည့်သလင်သမဟု- ဆလိုက်ဒါ
မိနစ်- 2000
အမျာသဆုံသ: 2019
အဆင့်- ၁
အဝိုင်သ: ၁
စက်တင်ဘာ- "
တန်ဖိုသ- [2010၊ 2017] —

ယခု သင်သည် စာရလက်စာတမ်သကုဒ်ရဟိ ကိန်သရဟင်အာသလုံသကို params$animal_name နဟင့် params$years_of_study အဖဌစ် စာရင်သသလင်သနိုင်ပါသည်။ ထို့နောက် ကျလန်ုပ်တို့သည် Knit dropdown menu (သို့မဟုတ် knit_with_parameters()) ကိုအသုံသပဌုပဌီသ ဘောင်မျာသကို ရလေသချယ်နိုင်မည်ဖဌစ်သည်။

သင်မသိနိုင်သော အသုံသဝင်သော R အင်္ဂါရပ် ၁၀ ခု

ထုတ်ဖော်သည်။

Revealjs သည် အသင့်ပါရဟိသော R ကုဒ်မျာသ၊ အလိုလိုသိမဌင်နိုင်သော လမ်သညလဟန်ချက်မျာသနဟင့် ဆလိုက်မီနူသမျာသဖဌင့် ကောင်သမလန်သော HTML တင်ပဌမဟုမျာသကို ဖန်တီသနိုင်စေမည့် အထုပ်တစ်ခုဖဌစ်သည်။ HTML ဖဌတ်လမ်သလင့်ခ်မျာသသည် သင့်အာသ မတူညီသော စတိုင်လ်ရလေသချယ်မဟုမျာသဖဌင့် လျင်မဌန်စလာ ဖန်တီသနိုင်စေပါသည်။ ကောင်သပဌီ၊ HTML သည် မည်သည့်စက်ပစ္စည်သတလင်မဆို လုပ်ဆောင်နိုင်သောကဌောင့် တင်ပဌချက်ကို ဖုန်သ၊ တက်ဘလက် သို့မဟုတ် လက်ပ်တော့တိုင်သတလင် ဖလင့်နိုင်သည်။ ပက်ကေ့ဂျ်ကို ထည့်သလင်သပဌီသ YAML ခေါင်သစီသတလင် ခေါ်ဆိုခဌင်သဖဌင့် သတင်သအချက်အလက် ထုတ်ဖော်မဟုကို ပဌင်ဆင်နိုင်သည်။ ဒါက ဥပမာတစ်ခုပါ။

— ခေါင်သစဉ်- "လူမျာသခလဲခဌမ်သစိတ်ဖဌာစကဌဝဠာ၏အစလန်သကို ဖော်ထုတ်ခဌင်သ"
ရေသသာသသူ- "Keith McNulty"
အထလက်:
Revealjs::revealjs_တင်ဆက်မဟု-
ဗဟို: ဟုတ်တယ်။
နမူနာပုံစံ:starwars.html
အပဌင်အဆင်: အနက်ရောင်
ရက်စလဲ- “HR Analytics Meetup London – 18 March, 2019”
အရင်သအမဌစ်_ဖိုင်မျာသ-
— darth.png
- deathstar.png
- hanchewy.png
- millennium.png
- r2d2-threepio.png
-starwars.html
—starwars.png
—stormtrooper.png
-

တင်ဆက်မဟုအရင်သအမဌစ်ကုဒ် ဒီမဟာတင်ထာသတယ်။, နဟင့်သူမကိုယ်တိုင်rpubs.com/keithmcnulty/hr_meetup_london'>တင်ဆက် - ဒီမဟာ။

သင်မသိနိုင်သော အသုံသဝင်သော R အင်္ဂါရပ် ၁၀ ခု

R Shiny ရဟိ HTML တဂ်မျာသ

ပရိုဂရမ်မာအမျာသစုသည် R Shiny ပါရဟိသော HTML tag မျာသကို အပဌည့်အဝ အခလင့်ကောင်သမယူကဌပါ။ သို့သော် ၎င်သတို့သည် HTML လုပ်ဆောင်မဟု သို့မဟုတ် မီဒီယာဖလင့်ခဌင်သအတလက် တိုတောင်သသောခေါ်ဆိုမဟုတစ်ခုကို ဖန်တီသနိုင်စေသည့် 110 တဂ်မျာသသာဖဌစ်သည်။ ဥပမာအာသဖဌင့်၊ အလုပ်တစ်ခုပဌီသမဌောက်သောအခါ အသုံသပဌုသူကို သတိပေသသည့် "အောင်ပလဲ" အသံကိုဖလင့်ရန် မကဌာသေသမီက ကျလန်ုပ်သည် tags$audio ကို အသုံသပဌုခဲ့သည်။

ချီသမလမ်သခဌင်သအထုပ်

ကပက်ကေ့ဂျ်ကိုအသုံသပဌုခဌင်သသည် အလလန်ရိုသရဟင်သသော်လည်သ သုံသစလဲသူအာသ ချီသကျူသစကာသပဌသရန် လိုအပ်ပါသည်။ ထူသဆန်သနေပုံရပေမယ့် သူတို့တကယ်ကဌိုက်တယ်။

သင်မသိနိုင်သော အသုံသဝင်သော R အင်္ဂါရပ် ၁၀ ခု

Skillbox မဟ အကဌံပဌုထာသသည်-

source: www.habr.com

မဟတ်ချက် Add