Hva er R?

x <- 10
x
## [1] 10
y <- "Christian"
y
## [1] "Christian"
data <- c(3,6,4,8,5,3,7,4)
data
## [1] 3 6 4 8 5 3 7 4
data2 <- c("Kari", "Ola", "Gunnar", "Vigdis", "Reidar", "Ronny", "Ruth", "Reiulf")
data2
## [1] "Kari"   "Ola"    "Gunnar" "Vigdis" "Reidar" "Ronny"  "Ruth"   "Reiulf"
str(x)
##  num 10
str(y)
##  chr "Christian"
str(data)
##  num [1:8] 3 6 4 8 5 3 7 4
summary(data)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    3.00    3.75    4.50    5.00    6.25    8.00
str(data2)
##  chr [1:8] "Kari" "Ola" "Gunnar" "Vigdis" "Reidar" "Ronny" "Ruth" ...
#Databehandling i R

x + 2
## [1] 12
z <- x*5
z
## [1] 50
paste(y, x)
## [1] "Christian 10"
x * data
## [1] 30 60 40 80 50 30 70 40
paste(data2, "og", y)
## [1] "Kari og Christian"   "Ola og Christian"    "Gunnar og Christian"
## [4] "Vigdis og Christian" "Reidar og Christian" "Ronny og Christian" 
## [7] "Ruth og Christian"   "Reiulf og Christian"
data2
## [1] "Kari"   "Ola"    "Gunnar" "Vigdis" "Reidar" "Ronny"  "Ruth"   "Reiulf"
data2[3]
## [1] "Gunnar"
data2[4:6]
## [1] "Vigdis" "Reidar" "Ronny"

Data frame

Det som ligner mest på en tabell i R.

priser <- c(4,7,5,8)
fortjeneste <- c(2,4,1,6)

salg <- data.frame(priser = priser, fortjeneste = fortjeneste)
salg
##   priser fortjeneste
## 1      4           2
## 2      7           4
## 3      5           1
## 4      8           6
priser / fortjeneste
## [1] 2.000000 1.750000 5.000000 1.333333
prosent.fortjeneste <- 100*fortjeneste/priser

prosent.fortjeneste <- round(prosent.fortjeneste, digits = 2)
prosent.fortjeneste
## [1] 50.00 57.14 20.00 75.00
##Hente data fra en data frame
salg
##   priser fortjeneste
## 1      4           2
## 2      7           4
## 3      5           1
## 4      8           6
salg[1,2]
## [1] 2
salg[3,]
##   priser fortjeneste
## 3      5           1
salg[,2]
## [1] 2 4 1 6

Lese inn data i R

dof <- read.csv("C:\\Users\\n633164\\Documents\\R\\Kurs UiB\\data\\dof.csv", stringsAsFactors = FALSE, fileEncoding = "UTF-8")
head(dof)
##        DOF Aksjekurs
## 1 21.10.14 172.10898
## 2 22.10.14 172.10898
## 3 23.10.14 173.81302
## 4 24.10.14 175.51707
## 5 27.10.14 174.66505
## 6 28.10.14 167.84885
summary(dof)
##      DOF             Aksjekurs        
##  Length:1253        Length:1253       
##  Class :character   Class :character  
##  Mode  :character   Mode  :character
dof[,2] <- as.numeric(dof[,2])
## Warning: NAs introduced by coercion
summary(dof)
##      DOF              Aksjekurs      
##  Length:1253        Min.   :  1.000  
##  Class :character   1st Qu.:  6.905  
##  Mode  :character   Median :  8.800  
##                     Mean   : 26.164  
##                     3rd Qu.: 35.444  
##                     Max.   :175.517  
##                     NA's   :2
plot(dof[,2])