10 Nodwedd R Defnyddiol Efallai Na Fyddech Yn Gwybod Amdanynt
Mae R yn llawn amrywiaeth o swyddogaethau. Isod byddaf yn rhoi deg o'r rhai mwyaf diddorol ohonynt, efallai nad yw llawer yn gwybod amdanynt. Ymddangosodd yr erthygl ar ôl i mi ddarganfod bod fy straeon am rai o nodweddion R a ddefnyddiaf yn fy ngwaith wedi cael croeso brwd gan gyd-raglenwyr. Os ydych chi eisoes yn gwybod popeth am hyn, yna ymddiheuraf am wastraffu eich amser. Ar yr un pryd, os oes gennych rywbeth i'w rannu, argymhellwch rywbeth defnyddiol yn y sylwadau.
Rydym yn atgoffa:i holl ddarllenwyr "Habr" - gostyngiad o 10 rubles wrth gofrestru ar unrhyw gwrs Skillbox gan ddefnyddio'r cod hyrwyddo "Habr".
swyddogaeth switsh
Rwy'n hoff iawn o switsh (). Mewn gwirionedd, mae'n llaw fer gyfleus ar gyfer datganiad if wrth ddewis gwerth yn seiliedig ar werth newidyn arall. Mae hyn yn arbennig o ddefnyddiol i mi pan fyddaf yn ysgrifennu cod sydd angen llwytho set benodol o ddata yn seiliedig ar ddetholiad blaenorol. Er enghraifft, os oes gennych anifail a enwir amrywiol a’ch bod am ddewis set benodol o ddata yn dibynnu a yw’r anifail yn gi, yn gath neu’n gwningen, ysgrifennwch hwn:
Bydd y nodwedd hon yn ddefnyddiol mewn cymwysiadau Shiny lle mae angen i chi lwytho gwahanol setiau data neu ffeiliau amgylchedd yn dibynnu ar un neu fwy o eitemau dewislen mewnbwn.
Allweddi poeth ar gyfer RStudio
Nid yw'r darnia hwn yn gymaint ar gyfer R, ond ar gyfer RStudio IDE. Fodd bynnag, mae hotkeys bob amser yn gyfleus iawn, sy'n eich galluogi i arbed amser wrth fewnbynnu testun. Fy ffefrynnau yw Ctrl+Shift+M ar gyfer y gweithredwr %>% ac Alt+- ar gyfer y gweithredwr <-.
I weld yr holl allweddi poeth, pwyswch Alt+Shift+K yn RStudio.
pecyn fflecsfwrdd
Pan fydd angen i chi lansio'ch dangosfwrdd Shiny yn gyflym, does dim byd gwell na'r pecyn dangosfwrdd. Mae'n darparu'r gallu i weithio gyda llwybrau byr HTML, sydd yn ei dro yn ei gwneud hi'n hawdd ac yn ddi-drafferth i greu bariau ochr, rhesi a cholofnau. Mae yna hefyd y gallu i ddefnyddio bar teitl, sy'n caniatáu ichi ei osod ar wahanol dudalennau'r rhaglen, gadael eiconau, llwybrau byr ar Github, cyfeiriadau e-bost a llawer mwy.
Mae'r pecyn yn caniatáu ichi weithio o fewn fframwaith Rmarkdown, felly gallwch chi osod pob cais mewn un ffeil Rmd, a pheidio â'u dosbarthu ar draws gwahanol weinyddion a ffeiliau UI, fel y gwneir, er enghraifft, gan ddefnyddio shinydashboard. Rwy'n defnyddio fflecsfwrdd pryd bynnag y bydd angen i mi greu prototeip dangosfwrdd syml cyn gweithio ar rywbeth cymhleth. Mae'r nodwedd hon yn caniatáu ichi greu prototeip o fewn awr.
req a dilysu swyddogaethau yn R Shiny
Gall datblygu yn R Shiny fod yn ddryslyd, yn enwedig pan fyddwch chi'n dal i gael negeseuon gwall rhyfedd sy'n ei gwneud hi'n anodd deall beth sy'n digwydd. Ond dros amser, mae Shiny yn datblygu ac yn gwella, mae mwy a mwy o swyddogaethau'n ymddangos yma sy'n eich galluogi i ddeall achos y gwall. Felly, mae req() yn datrys y broblem gyda gwall “tawel”, pan nad yw'n glir yn gyffredinol beth sy'n digwydd. Mae'n caniatáu ichi arddangos elfennau UI sy'n gysylltiedig â chamau gweithredu blaenorol. Gadewch i ni egluro gydag enghraifft:
botwm allbwn $go_ < - sgleiniog :: renderUI({
# botwm arddangos dim ond os yw mewnbwn anifail wedi'i ddewis
Mae validate() yn gwirio popeth cyn ei rendro ac yn rhoi'r opsiwn i chi argraffu neges gwall - er enghraifft, bod y defnyddiwr wedi uwchlwytho'r ffeil anghywir:
# cael ffeil mewnbwn csv
inFile < — mewnbwn$file1
data < — inFile$datapath
# bwrdd rendrad dim ond os mai cŵn ydyw
sgleiniog::renderTable({
# gwiriwch mai ffeil y ci ydyw, nid cathod na chwningod
sgleiniog :: dilysu (
angen ("Enw Ci" % yn % colnames(data)),
“Ni chanfuwyd colofn Enw Ci - a wnaethoch chi lwytho'r ffeil gywir?”
)
data
})
Mwy o wybodaeth am yr holl nodweddion hyn i'w gweld yma.
Storio'ch tystlythyrau i chi'ch hun yn amgylchedd y system
Os ydych chi'n bwriadu rhannu cod sy'n gofyn ichi nodi tystlythyrau, defnyddiwch amgylchedd y system i osgoi cynnal eich tystlythyrau eich hun ar Github neu wasanaeth arall. Lleoliad enghreifftiol:
Mae hyd yn oed yn fwy cyfleus (yn enwedig os ydych chi'n defnyddio'r data'n aml) i'w gosod fel newidynnau amgylchedd yn uniongyrchol yn y system weithredu. Yn yr achos hwn, byddant bob amser ar gael ac ni fydd yn rhaid i chi eu nodi yn y cod.
Awtomeiddio pennill taclus gyda steilydd
Gall y pecyn steiliwr eich helpu i lanhau'ch cod; mae ganddo lawer o opsiynau ar gyfer dod ag arddull y cod yn daclus yn awtomatig. Y cyfan sydd angen i chi ei wneud yw rhedeg styler:: style_file() ar eich sgript problemus. Bydd y pecyn yn gwneud llawer (ond nid popeth) i adfer trefn.
Parameterizing R Markdown Dogfennau
Felly rydych chi wedi creu dogfen R Markdown wych lle rydych chi'n dadansoddi ffeithiau amrywiol am gŵn. Ac yna mae'n digwydd i chi y byddai'n well gwneud yr un gwaith, ond dim ond gyda chathod. Dim problem, gallwch chi awtomeiddio creu adroddiadau cathod gydag un gorchymyn yn unig. I wneud hyn, dim ond eich dogfen marcio R i lawr sydd angen i chi ei baramedru.
Gallwch wneud hyn trwy osod paramedrau ar gyfer y pennawd YAML yn y ddogfen benodedig, ac yna gosod y paramedrau gwerth.
Nawr gallwch chi gofrestru'r holl newidynnau yng nghod y ddogfen fel params$animal_name a params$years_of_study. Yna byddwn yn defnyddio'r gwymplen Knit (neu knit_with_parameters()) ac yn gallu dewis paramedrau.
datgelujs
Mae revelationjs yn becyn sy'n eich galluogi i greu cyflwyniadau HTML gwych gyda chod R adeiledig, llywio greddfol a bwydlenni sleidiau. Mae llwybrau byr HTML yn caniatáu ichi greu strwythur sleidiau nythu yn gyflym gyda gwahanol opsiynau steilio. Wel, bydd HTML yn rhedeg ar unrhyw ddyfais, felly gellir agor y cyflwyniad ar bob ffôn, tabled neu liniadur. Gellir ffurfweddu datgeliad gwybodaeth trwy osod y pecyn a'i alw ym mhennyn YAML. Dyma enghraifft:
Nid yw'r rhan fwyaf o raglenwyr yn manteisio'n llawn ar y tagiau HTML sydd gan R Shiny. Ond dim ond 110 o dagiau yw'r rhain, sy'n ei gwneud hi'n bosibl creu galwad fer am swyddogaeth HTML neu chwarae cyfryngau. Er enghraifft, yn ddiweddar defnyddiais dagiau $audio i chwarae sain "buddugoliaeth" a oedd yn rhybuddio'r defnyddiwr pan gwblhawyd tasg.
Pecyn canmoliaeth
Mae defnyddio'r pecyn hwn yn syml iawn, ond mae ei angen i ddangos canmoliaeth i'r defnyddiwr. Mae'n ymddangos yn rhyfedd, ond maen nhw'n ei hoffi mewn gwirionedd.