1.2 Kommandoer, navne, kommentarer

De simpleste kommandoer er enkelte beregninger. De tastes ind i kommandovinduet (Console), bag “>” tegnet og R gengiver resultatet så snart du trykker på Enter. For eksempel giver

> 2 + 5

outputtet

[1] 7

Hvorfor starter output linjen starter med [1]? Det skal vi se i næste kapitel, i afsnit om vektorer.

Generelt tager R alt som vi skriver bag “>” tegnet og afsender med Enter som kommando, dvs, som en opfordring: “R, prøv nu at forestå hvad jeg gerne vil have af dig, lav dine opgaver og vis mig resultatet”.

Sådan læser R kommandolinjen

R kan forestå tal og de gængse regneudtryk man laver med tal. Når kommandolinjen også indeholder bogstaver, så vil R det interpretere i kontekst:

  • bogstaver i gåseøjne er bare tekst, som anses som en form for data.
  • bogstaver eller tekst uden gåseøjne anses som navnet på en variabel eller en funktion.
  • et navn fulgt af runde parenteser med eller uden indhold signaliserer R, at den skal anvende en funktion med dette navn på indholdet i parenteserne. Hvis ikke R kender navnet, brokker den sig. Læs mere om funktioner i afsnit 2.2.
  • et navn uden parenteser interpreteres som en variabel, dvs, data (fx tal) gemt under dette navn. Læs mere om variable i afsnit 2.1.

Næste afsnit vil forklare variabler og funktioner nærmere.

Eksempel
Skærmklippet nedenunder viser

  • tekstdata
  • navnet på en variabel som indeholder taldata, nemlig \(\pi\)
  • navnet på en funktion: R siger, at det er en funktion, og giver kryptiske detaljer
  • et navn som R ikke kender.

Kommentarer

Et hashtag # siger til R, at resten af kommandolinjen skal ignoreres. Kommentarer bruges normalt ikke når man skriver i kommandovinduet, men når man gemmer kode er det meget oplagt. Eksemplet nedenunder ville medføre R-brok, hvis man fjernede hashtag.

Eksempel

> "pi"   # jeg elsker tallet pi :-)
[1] "pi"
> pi     # men nu skal jeg endeligt se tallets kønne ciffre
[1] 3.141593

Øvelse 1.1

Prøv at forudsige resultatet af de følgende kommandoer i R, og tjek så, om du har gættet rigtigt.

> 6 / 2
> 3 + 4 * 5
> (3 + 4) * 5
> 3 ^ 2
> 2 ^ 3
> sqrt(9)
> exp(1)
> abs(4 - 17)
> cos(2 * pi)