10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (2024)

Tähän asti työpajassa olemme enimmäkseen vain kirjoittaneet vakioarvostusasiakirjan. Haluamme kuitenkin integroida R-koodin asiakirjaamme luodaksemme toistettavia objekteja, kuten kuvioita, taulukoita ja tekstiä.

10.1Koodipalat

Lisää koodikappale painamallaCtrl + Alt + Ilähderuudussa (vasen yläruutu RStudion oletusasetuksissa). Näkyviin tulee koodipala:10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (1)

Koodipalan sisällä voit kirjoittaa ja ajaa R-koodia. Jos tulostat R-koodisi tulosteen, se näkyy koodikappaleen alapuolella lähderuudussa ja tuloste näkyy lopullisessa käännetyssä asiakirjassa. Tästä on hyötyä kuvien ja taulukoiden tuottamisessa.

10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (2)

  • Koodipalan oikeassa reunassa näet kolme painiketta.
    • Hammaspyörän avulla on helppo määrittää koodilohkovaihtoehtoja - käsitellään alla.
    • Keskimmäinen painike suorittaa kaikki koodipalat ennen tiettyä toimintoa (Ctrl + Alt + P)
    • Oikeanpuoleinen painike suorittaa kaiken koodin koodikappaleessa.
10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (3)

10.1.1Pikanäppäimet

Haluat oppia nämä ASAP.

  • Ctrl + Alt + I- Lisää uusi koodikappale
  • Ctrl + Enter- Suorita koodirivi, jolla kohdistin on päällä
  • Ctrl + Alt + R- Suorita kaikki asiakirjassa oleva koodi
  • Ctrl + Alt + P- Suorita kaikki koodipalat kohdistimen yläpuolella
  • Ctrl + Vaihto + F10- Käynnistä R uudelleen

10.1.2Vaihtoehdot

Koodikappaleen otsikossa voidaan määrittää useita koodinpalavaihtoehtoja, joilla muokataan sitä, miten koodipala hahmonnetaan neulomisen aikana. Nämä vaihtoehdot eivät näy hahmonnetussa asiakirjassa – vaikka et piilottaisikaan hahmonnetun asiakirjan koodipaloja.

Kattava lista lohkovaihtoehdoista löytyy täältä:https://yihui.org/knitr/options/

10.1.2.1nimi

Paras käytäntö on sisällyttää lyhyt ja yksilöllinen nimi jokaiseen koodiosan otsikkoon. Tämä on erityisen hyödyllistä, jos sinun on tehtävä vianmääritys asiakirjassasi, koska voit jäljittää virheen lähteen koodiosan nimen perusteella. "Nimi" ei ole määritetty argumentiksi otsikossa; se on yksinkertaisesti erotettu "r":stä välilyönnillä. Tämä on esimerkki alla olevassa kuvassa rivillä 9, jossa "lisäys" on annettu koodikappaleen nimenä ({r lisäys}).

10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (4)

10.1.2.2kaiku

Looginen arvo (tosi tai epätosi), joka ilmaisee, pitäisikö koodikappaleen olla näkyvissä hahmonnetussa asiakirjassa. Oletuksena koodinpala on näkyvissä neulomisen yhteydessä (kaiku = tosi). Jos haluat piilottaa tietyn koodiosan, aseta kaiku arvoon "false" (echo=false).

Sisällytä koodikappale renderöidyn asiakirjan kanssakaiku = tosi.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (5)

Sulje koodipala pois hahmonnetusta asiakirjastaecho=false.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (6)

10.1.2.3fig.width, fig.height ja fig.cap

Thefig.widthjafig.korkeusvaihtoehtojen avulla voit hallita tietystä koodipalasta luodun kuvan kokoa.fig.captarjoaa mahdollisuuden lisätä kuvatekstin tietystä koodipalasta luodun luvun alle.

Tässä on esimerkki juonitulosta koodikappaleesta.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (7)

Tässä olen täsmentänytfig.width,fig.korkeus, jafig.cap. Huomaa, että juonen mitat ovat muuttuneet edellisestä kuvasta ja kuvan alaosaan on lisätty kuvateksti.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (8)

Monissa tapauksissa haluat, että tekstitykset numeroidaan ja haluat tämän tapahtuvan automaattisesti. Tätä varten sinun on ensin asennettava pakettikirja alas(install.packages("bookdown")). Määritä YAML-otsikossa, että tulosteen tulee olla "html_document2" tiedostostakirja alaspaketti (lähtö: bookdown::html_document2). Kun teet asiakirjan, luvut numeroidaan nyt automaattisesti siinä järjestyksessä, jossa ne näkyvät asiakirjassa. Käytä tekstissä ristiviittausta kuviin nimellä\@ref(kuva:kuvan_nimi). Alla olevan kuvan esimerkin avulla voit kirjoittaa "In\@ref(kuva:IrisScatter)voimme nähdä, että setosoa-lajilla on yleensä lyhyempi verholehti kuin kahdella muulla lajilla." Lisätietoja on osoitteessahttps://bookdown.org/yihui/rmarkdown-cookbook/figure-number.html.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (9)

10.1.2.4viesti ja varoitus

Käyttämälläviesti=FALSEja taivaroitus = EPÄTOSIestää viestit ja varoitukset, jotka estävät niitä tulostumasta renderöityyn asiakirjaan.Varoitus:Tukista nämä viestit/varoitukset omalla vastuullasi. Ilman näitä viestejä/varoituksia saatat olla erittäin vaikeaa löytää koodissasi olevia ongelmia.

Esimerkki viesteistä, jotka on tuotettu oletuksenaviesti=TRUE.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (10)

Yllä olevat viestit voidaan vaimentaa asetuksillaviesti=FALSEkoodilohkon otsikossa.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (11)

10.1.2.5sisältää

Koodilohkon otsikotinclude=FALSEohitetaan, kun asiakirja renderöidään. Tästä voi olla hyötyä dokumenttien kehittämisessä. Sinulla voi esimerkiksi olla koodikappale, joka tuottaa virheen, joka estää sinua hahmontamasta loput asiakirjasta, tai saatat kyseenalaistaa tietyn koodiosan säilyttämisen.include=FALSEjättää koodin pois hahmonnetusta asiakirjasta poistamatta koodia kokonaan .Rmd-tiedostosta.

Oletus oninclude=TRUE. Alla olevassa esimerkissäsisältääei ole muuttunut oletusarvosta, ja siksi kaikki koodipalat ovat hahmonnetussa asiakirjassa.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (12)

Alla olevassa esimerkissä lisäsininclude=FALSEtoisen koodiosan otsikkoon nimeltä "iris-sepal-scatter". Toinen koodikappale jätetään renderöidyn asiakirjan ulkopuolelle.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (13)

10.1.2.6Yleisten asetusten asettaminen

Voi olla hyödyllistä määrittää yleiset asetukset vakiomuodon tuottamiseksi koko asiakirjassa. Voit asettaa tämän painikkeellaknitrtoimintoopts_chunk$set(). Voit esimerkiksi määrittää vakiomitat luvuille, jotka on tuotettu asiakirjassasi koodipaloissa. Alla olevassa koodikappaleessa näet, että asetinfig.widthklo 8 jafig.korkeus4.

kohdassa määritellyt vaihtoehdotopts_chunk$set()tulee oletusasetukseksi asiakirjaa renderöidessään. Sinulla on kuitenkin edelleen mahdollisuus korvata nämä vaihtoehdot tietyille koodilohkoille. Edellisen esimerkin pohjalta saatat huomata, että yksi kymmenestä tonteistasi ei ole esteettisesti miellyttävä.kuva leveys = 8jakuva.korkeus = 4. Voit määrittää määritettävän juonen tuottavassa koodikappaleessakuva leveys = 6jakuva.korkeus = 6, esimerkiksi.

10.2Sisäinen koodi

Inline-koodin avulla voit lisätä R-koodin asiakirjaan dynaamisesti päivitettyihin tekstin osiin.

Sisällytäksesi sisäänrakennetun koodin sinun on sisällytettävä R-koodisi:10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (14).

Voit kirjoittaa esimerkiksi:

10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (15)Mikä antaisi:Keskimääräinen verholehden pituus löytyyiiristietojoukko on 5.8433333.

Käytän usein sisäistä koodia päivittääkseni YAML-otsikon päivämäärän päivämäärään, jolloin asiakirja viimeksi renderöitiin.

10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (16)

Voit muotoilla päivämäärän uudelleen käyttämällämuoto()toiminto, kuten alla olevassa kuvassa näkyy.10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (17)

10.3Sinun vuorosi (osa 1)

Tämän harjoituksen tarkoituksena on perehtyä koodipaloihin ja rivikoodiin, EI testata R-tietoasi. siksi olen lisännyt tarvittavan koodin jokaisen tehtävän alle.

  1. Lisää koodipala käyttämälläCtrl + Alt + ituodaksesi esimerkkitietojoukon.
    • read.csv(tiedosto = tiedosto.polku("data", "zms_thesis_metrics.csv"), stringsAsFactors = EPÄTOSI)
    • Lisää nimi tälle koodikappaleen otsikoille ja kaikille myöhemmille koodilohkon otsikoille.
    • Lisää pelkkä tekstikuvaus koodiosan yläpuolelle.
    • Lisää seuraava järjestämätön luettelo, joka kuvaa tuotujen tietojen sisällön.
      • uniikki tunniste(merkki) yksilöllinen näytetunnus
      • järvi(merkki) järven koodi: caz = Cazenovia-järvi, onon = Onondaga ja ot = Otisco
      • lat(numeerinen) näytteenottopaikan leveysaste
      • pitkä(numeerinen) näytteenottopaikan pituusaste
      • substraatin_koko_d50(numeerinen) hiukkaskoon mediaani pikkukivimäärästä
      • johtavuus(numeerinen) ominaisjohtavuus (µS/cm)
      • rikkaus(numeerinen) taksonominen rikkaus
      • shannon(numeerinen) Shannon-Wienerin monimuotoisuusindeksin arvot
      • pct_ephemeropteraEphemeroptera taksonien (numeerinen) suhteellinen runsaus
      • pct_amphipoda(numeerinen) Amphipoda-taksonien suhteellinen runsaus
      • pct_dipteraDiptera taksonien (numeerinen) suhteellinen runsaus
      • dom_1kussakin näytteessä havaitun hallitsevimman taksonin (numeerinen) suhteellinen runsaus
  2. Lisää koodipala tuodaksesisiisti monimuotoisuuspaketteja.
    • kirjasto (siivous)
    • Lisää pelkkä tekstikuvaus koodiosan yläpuolelle.
    • Lisätäviesti=FALSEkoodikappaleen otsikkoon estääksesi paketin käynnistysviestit
  3. Lisää koodipala allekirjasto (siivous)esikäsitellä järven nimi (järvi), joka liittyy kuhunkin näytteeseen.
  1. Lisää koodipala heti YAML-otsikon alapuolelle määrittääksesi yleiset koodipalaasetukset
    • täsmentääfig.widthjafig.korkeus
    • määritä otsikossaecho=FALSEpiilottaaksesi tämän koodikappaleen – lukijan ei tarvitse nähdä tätä
  1. Luo sirontakaavio lisäämällä koodipala.
    • Lisää otsikko
  1. Lisää koodipala luo boxplot.
    • Muokkaa hahmon kokoa
    • Lisää otsikko
  1. Lisää lukujen lyhyt tulkinta "Johtopäätökset" -osioon.
  2. Bonus:Yritä päivittää koodikappaleen asetukset käyttämällä koodikappaleen oikeassa yläkulmassa olevaa hammaspyörää.
10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (18)

10.4Interaktiiviset ominaisuudet

Vuorovaikutteiset taulukot ja kuviot ovat loistava tapa tehdä asiakirjastasi kiinnostavampi ja niistä voi olla paljon hyötyä tietojen tutkimisessa. Varoitan sinua, että jos käytät näitä ominaisuuksia liian usein, asiakirjasi tulee sotkuiseksi ja todennäköisesti latautuu ja toimii hitaasti.

10.4.1DT

TheDTpaketin avulla sinä ja lukijasi voivat olla vuorovaikutuksessa asiakirjasi taulukoiden kanssa. Voit suodattaa ja lajitella taulukon nähdäksesi tiedot, joista olet eniten kiinnostunut tutkimaan tai ymmärtämään.

Lisätietoja on osoitteessahttps://rstudio.github.io/DT/

## ## Paketin liittäminen: "DT"
## Seuraavat objektit on peitetty paketista:shiny:## ## dataTableOutput, renderDataTable

10.4.2Juoni

Juonihelpottaa interaktiivisten hahmojen luomista. Jotkut hyödyllisimmistä ominaisuuksista ovat kyky…

  • kierrä kuvaobjekteja ja näet tiettyihin ominaisuuksiin liittyviä ponnahdusikkunoita
  • Lähennä ja loitonna
  • ota kuva hahmosta

Lisätietoja on osoitteessa:https://plot.ly/ggplot2/

Käytän yleensäjuonimainenkanssaggplot2. Thejuonimainentoiminto,ggplotly(), tekee muuntamisesta helppoaggplot2lukuja interaktiiviseksijuonimainenlukuja.

10.4.3Esite

Esiteon loistava resurssi interaktiivisten karttojen luomiseen minimaalisella koodauksella.

Lisätietoja on osoitteessa:https://rstudio.github.io/leaflet/

Toinen siisti ominaisuus on kyky ryhmitellä pisteitä tiheyden visualisoimiseksi paremmin. Voit tehdä tämän asettamallaclusterOptions = markerClusterOptions().

10.5Sinun vuorosi (osa 2)

  1. Lisää koodipala "Preprocessing"-otsikon alle ja lisää seuraavaDTkoodi
    • lisää tämä linkki (https://rstudio.github.io/DT/) koodin yläpuolella olevaan kuvaukseen, jossa kerrotaan, mistä löydät lisätietojaDT
  1. Lisää koodipala "Study Area" -otsikon alle ja lisää seuraavaesitekoodi
    • lisää tämä linkki (https://rstudio.github.io/leaflet/) koodin yläpuolella olevaan kuvaukseen, jossa kerrotaan, mistä löydät lisätietojaesite
  1. Muokkaa sirontakuvaajan koodikappaletta, jotta kuvasta tulee interaktiivinenjuonimainen
    • lisää tämä linkki (https://plot.ly/ggplot2/) koodin yläpuolella olevaan kuvaukseen
    • leikkiä interaktiivisella juonella ja juonen oikeassa yläkulmassa olevilla työkaluilla
      • Voit esimerkiksi lähentää, napsauttaa pisteitä saadaksesi lisätietoja, ottaa tilannekuvan nykyisestä juovasta jne.
10 Oppitunti 5: Koodipalat ja rivikoodi | R Markdownin törmäyskurssi (2024)
Top Articles
Latest Posts
Article information

Author: Jamar Nader

Last Updated:

Views: 5440

Rating: 4.4 / 5 (75 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Jamar Nader

Birthday: 1995-02-28

Address: Apt. 536 6162 Reichel Greens, Port Zackaryside, CT 22682-9804

Phone: +9958384818317

Job: IT Representative

Hobby: Scrapbooking, Hiking, Hunting, Kite flying, Blacksmithing, Video gaming, Foraging

Introduction: My name is Jamar Nader, I am a fine, shiny, colorful, bright, nice, perfect, curious person who loves writing and wants to share my knowledge and understanding with you.