W niniejszym pliku przedstawiono zawartość całego opracowania - razem 14 rozdziałów.
Bezpośrednio po wskazanych komendach podany jest wynik otrzymywany w programie R.
Po lewej stronie zamieszczono menu pozwalające wygodnie przemieszczać się po wyróżnionych tematach.
We wszystkich obszarach z kodem R umieszczono przyciski pozwalające na wygodne kopiowanie kodu i następnie wklejanie go do programu R.
- Podstawy pracy z programem R
- Struktury danych
- Instrukcje warunkowe oraz pętle
- Funkcje i operacje matematyczne oraz statystyczne
- Import i eksport danych. Wykresy. Zmienne losowe
- Wizualizacja z pakietem lattice
- Model liniowy
- Weryfikacja hipotez i pakiet dplyr
- Pakiet ggplot2. Podstawy konstrukcji wykresów
- Pakiet patchwork
- Pakiety ggplot2 i gapminder. Podstawy animacji
- Animacje dla rzeczywistych danych z BDL
- Interaktywny dashboard z pakietem shiny
- Uczenie maszynowe z pakietem mlr3
# To jest komentarz. Komentarze rozpoczynamy znakiem #
## tak oznaczane będą wyniki wykonanych poleceń
1:10
## [1] 1 2 3 4 5 6 7 8 9 10
# Ctrl+R - wykonanie kodu z edytora R
?plot
## uruchamianie serwera httpd dla pomocy ... wykonano
# install.packages("ggplot2")
# można też zapisać
# install.packages('ggplot2')
library(ggplot2)
## Warning: pakiet 'ggplot2' został zbudowany w wersji R 4.2.3
# ls('package:ggplot2')
2+2
## [1] 4
20-2
## [1] 18
6*7
## [1] 42
30/5
## [1] 6
# 30\5 błąd, bo ukośnik jest w przeciwną stronę
2^5
## [1] 32
sqrt(4)
## [1] 2
log(12)
## [1] 2.484907
log(16,2)
## [1] 4
pi
## [1] 3.141593
sin(pi)
## [1] 1.224606e-16
choose(4,1)
## [1] 4
round(2.4347247)
## [1] 2
round(2.55)
## [1] 3
round(2.4347247,digits=2)
## [1] 2.43
x=7
x
## [1] 7
print(x)
## [1] 7
y<-10
y
## [1] 10
z=x*y
z
## [1] 70
z=x+y
z
## [1] 17
x;y;z
## [1] 7
## [1] 10
## [1] 17
ls()
## [1] "x" "y" "z"
rm(z)
ls()
## [1] "x" "y"
rm(list=ls())
ls()
## character(0)
n1=2.4535
n1
## [1] 2.4535
print(n1,3) #wyświetlenie 3 cyfr znaczących (ostatni element jest zaokrąglany)
## [1] 2.45
round(n1,3)
## [1] 2.454
t1="Patrycja"
t1
## [1] "Patrycja"
t2='Dawid'
t2
## [1] "Dawid"
print(t2,quote=FALSE)
## [1] Dawid
t3="to jest pies"
sub("pies","kot",t3)
## [1] "to jest kot"
paste(t1,"i",t2)
## [1] "Patrycja i Dawid"
substr(t3,9,12) #wyodrębnianie tekstu - od 9 znaku do 12
## [1] "pies"
l1=TRUE
l2=T
l3=FALSE
F
## [1] FALSE
l1|l3
## [1] TRUE
l1&l3
## [1] FALSE
!l1
## [1] FALSE
1==1
## [1] TRUE
2>3
## [1] FALSE
25<=25
## [1] TRUE
23>=7
## [1] TRUE
(12>2)&(15==12)
## [1] FALSE
(sqrt(159)==13)&(7^5>252)
## [1] FALSE
class(t1)
## [1] "character"
class(n1)
## [1] "numeric"
identical(t1,n1)
## [1] FALSE
ls()
## [1] "l1" "l2" "l3" "n1" "t1" "t2" "t3"
ls.str()
## l1 : logi TRUE
## l2 : logi TRUE
## l3 : logi FALSE
## n1 : num 2.45
## t1 : chr "Patrycja"
## t2 : chr "Dawid"
## t3 : chr "to jest pies"
is.logical(t1)
## [1] FALSE
is.numeric(t1)
## [1] FALSE
is.character(t1)
## [1] TRUE
is.matrix(t1)
## [1] FALSE
w1=c(10,9,8,7,6,5)
w1
## [1] 10 9 8 7 6 5
w2=c(T,T,F,F)
w2
## [1] TRUE TRUE FALSE FALSE
w3=c("Dawid","Wojtek","Robert","Kuba","Klaudia","Luiza")
w3
## [1] "Dawid" "Wojtek" "Robert" "Kuba" "Klaudia" "Luiza"
1:10
## [1] 1 2 3 4 5 6 7 8 9 10
10:1
## [1] 10 9 8 7 6 5 4 3 2 1
1.2:20.2
## [1] 1.2 2.2 3.2 4.2 5.2 6.2 7.2 8.2 9.2 10.2 11.2 12.2 13.2 14.2 15.2
## [16] 16.2 17.2 18.2 19.2 20.2
1.2:20.3
## [1] 1.2 2.2 3.2 4.2 5.2 6.2 7.2 8.2 9.2 10.2 11.2 12.2 13.2 14.2 15.2
## [16] 16.2 17.2 18.2 19.2 20.2
1.2:20.1
## [1] 1.2 2.2 3.2 4.2 5.2 6.2 7.2 8.2 9.2 10.2 11.2 12.2 13.2 14.2 15.2
## [16] 16.2 17.2 18.2 19.2
# ?seq
seq(16,30,3)
## [1] 16 19 22 25 28
seq(to=30,by=3,from=16)
## [1] 16 19 22 25 28
w4=seq(to=30,from=16,3)
w4
## [1] 16 19 22 25 28
w5=c(23,23,1,2,3,1)
ls()
## [1] "l1" "l2" "l3" "n1" "t1" "t2" "t3" "w1" "w2" "w3" "w4" "w5"
# w1 + w3
w1;w3
## [1] 10 9 8 7 6 5
## [1] "Dawid" "Wojtek" "Robert" "Kuba" "Klaudia" "Luiza"
w1+w5
## [1] 33 32 9 9 9 6
w1*w5
## [1] 230 207 8 14 18 5
w6=seq(7,10,length=10)
w6
## [1] 7.000000 7.333333 7.666667 8.000000 8.333333 8.666667 9.000000
## [8] 9.333333 9.666667 10.000000
length(w6)
## [1] 10
any(w6<0)
## [1] FALSE
any(w6>0)
## [1] TRUE
w6>0
## [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
all(w1==w3)
## [1] FALSE
?rep
rep(1,100) #Powielenie 1-ki sto razy.
## [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## [38] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## [75] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
rep(c(1,2,3),3)
## [1] 1 2 3 1 2 3 1 2 3
rep("pies",2)
## [1] "pies" "pies"
rep(c(1,2,3),each=3)
## [1] 1 1 1 2 2 2 3 3 3
# Jak uzyskać wektor liczb 9 8 7 9 8 7 2 2 2 1 1 1?
# 1 sposób
x1=rep(c(9,8,7),2)
x1
## [1] 9 8 7 9 8 7
x2=rep(c(2,1),each=3)
x2
## [1] 2 2 2 1 1 1
c(x1,x2)
## [1] 9 8 7 9 8 7 2 2 2 1 1 1
# 2 sposób - kod w jednej linijce
c(rep(c(9,8,7),2),rep(c(2,1),each=3))
## [1] 9 8 7 9 8 7 2 2 2 1 1 1
?sample
s1=sample(1:7,10,replace=T)
s1
## [1] 6 7 1 5 3 4 5 2 2 5
# sample(1:7,10)
# Wykonując kod pojawi się błąd, ponieważ zbiór, z którego pobieramy liczby jest za mały.
# Wektor s2 będzie pobierał 5 liczb z wektora liczb pierwszych z przedziału od 1 do 20.
s2<-sample(c(2,3,5,7,11,13,17,19),5)
s2
## [1] 17 7 2 19 3
s3<-sample(1:4,15,prob=c(0.4,0.1,0.3,0.2),replace=T)
s3
## [1] 3 4 4 1 4 3 4 3 4 1 2 3 4 3 1
x=c(19,23,27,15,43)
x
## [1] 19 23 27 15 43
M=c(T,F,F,T,T)
M
## [1] TRUE FALSE FALSE TRUE TRUE
x[M]
## [1] 19 15 43
x[2]
## [1] 23
x[2:5]
## [1] 23 27 15 43
x[c(1,5)]
## [1] 19 43
x[length(x)]
## [1] 43
x[c(1,length(x))]
## [1] 19 43
x[-2]
## [1] 19 27 15 43
x[-c(1,3)]
## [1] 23 15 43
x[-(1:3)]
## [1] 15 43
x[4]=-1
x[-4]=0
x
## [1] 0 0 0 -1 0
x=c(19,23,27,15,43)
x
## [1] 19 23 27 15 43
x>20
## [1] FALSE TRUE TRUE FALSE TRUE
x[x>20]
## [1] 23 27 43
x=c("pop","rock","rap","rap")
class(x)
## [1] "character"
f<-factor(x)
f
## [1] pop rock rap rap
## Levels: pop rap rock
factor(x,exclude="pop")
## [1] <NA> rock rap rap
## Levels: rap rock
f=factor(x,label=c("1 gatunek","2 gatunek","3 gatunek"))
f
## [1] 1 gatunek 3 gatunek 2 gatunek 2 gatunek
## Levels: 1 gatunek 2 gatunek 3 gatunek
f1=factor(c(1,2,1,3,1,2),levels=1:4)
f1
## [1] 1 2 1 3 1 2
## Levels: 1 2 3 4
levels(f1)=c("nie podoba mi się","średnie","okej","super")
f1
## [1] nie podoba mi się średnie nie podoba mi się okej
## [5] nie podoba mi się średnie
## Levels: nie podoba mi się średnie okej super
summary(f1)
## nie podoba mi się średnie okej super
## 3 2 1 0
f1[length(f1)]="super"
f1
## [1] nie podoba mi się średnie nie podoba mi się okej
## [5] nie podoba mi się super
## Levels: nie podoba mi się średnie okej super
summary(f1)
## nie podoba mi się średnie okej super
## 3 1 1 1
as.numeric(f1)
## [1] 1 2 1 3 1 4
a=1:5
b=5:1
c=c(1,2,34,5,0)
a;b;c
## [1] 1 2 3 4 5
## [1] 5 4 3 2 1
## [1] 1 2 34 5 0
m1=cbind(a,c,b)
m2=rbind(c,b,a)
m3=cbind(m1,c)
# cbind(m1,m2)
# Niewykonalne ze względu na różne wymiary obiektów.
?matrix
m4=matrix(0,ncol=4,nrow=3)
m4
## [,1] [,2] [,3] [,4]
## [1,] 0 0 0 0
## [2,] 0 0 0 0
## [3,] 0 0 0 0
m5=matrix(1:12,nrow=3,ncol=4)
m5
## [,1] [,2] [,3] [,4]
## [1,] 1 4 7 10
## [2,] 2 5 8 11
## [3,] 3 6 9 12
matrix(1:12,nrow=3,ncol=4,byrow=T)
## [,1] [,2] [,3] [,4]
## [1,] 1 2 3 4
## [2,] 5 6 7 8
## [3,] 9 10 11 12
diag(4)
## [,1] [,2] [,3] [,4]
## [1,] 1 0 0 0
## [2,] 0 1 0 0
## [3,] 0 0 1 0
## [4,] 0 0 0 1
diag(c(4,3,2,3))
## [,1] [,2] [,3] [,4]
## [1,] 4 0 0 0
## [2,] 0 3 0 0
## [3,] 0 0 2 0
## [4,] 0 0 0 3
k=c(F,F,F,T)
w=c(F,F,T)
m5[w,k]
## [1] 12
m5[3,2] #Wybór elementu z 3 wiersza i 2 kolumny.
## [1] 6
m5[,2]
## [1] 4 5 6
m5[1,]
## [1] 1 4 7 10
m5[1:2,c(1,4)]
## [,1] [,2]
## [1,] 1 10
## [2,] 2 11
m5[,-3]
## [,1] [,2] [,3]
## [1,] 1 4 10
## [2,] 2 5 11
## [3,] 3 6 12
m5
## [,1] [,2] [,3] [,4]
## [1,] 1 4 7 10
## [2,] 2 5 8 11
## [3,] 3 6 9 12
m5[2,4]=0
m5
## [,1] [,2] [,3] [,4]
## [1,] 1 4 7 10
## [2,] 2 5 8 0
## [3,] 3 6 9 12
m5>6
## [,1] [,2] [,3] [,4]
## [1,] FALSE FALSE TRUE TRUE
## [2,] FALSE FALSE TRUE FALSE
## [3,] FALSE FALSE TRUE TRUE
m5[m5>6]
## [1] 7 8 9 10 12
m5[m5>6]=-1
m5
## [,1] [,2] [,3] [,4]
## [1,] 1 4 -1 -1
## [2,] 2 5 -1 0
## [3,] 3 6 -1 -1
length(m5)
## [1] 12
nrow(m5)
## [1] 3
ncol(m5)
## [1] 4
# Mnożenie macierzy
m=matrix(1:4,2,2)
mm=matrix(4:1,2,2)
m;mm
## [,1] [,2]
## [1,] 1 3
## [2,] 2 4
## [,1] [,2]
## [1,] 4 2
## [2,] 3 1
m*mm
## [,1] [,2]
## [1,] 4 6
## [2,] 6 4
m%*%mm
## [,1] [,2]
## [1,] 13 5
## [2,] 20 8
det(m)
## [1] -2
t(m)
## [,1] [,2]
## [1,] 1 2
## [2,] 3 4
solve(m)
## [,1] [,2]
## [1,] -2 1.5
## [2,] 1 -0.5
sum(m)
## [1] 10
mean(m)
## [1] 2.5
apply(m,1,sum)
## [1] 4 6
apply(m,2,sum)
## [1] 3 7
apply(m,1,mean)
## [1] 2 3
plec=c("M","K","M","M","K")
zakupy=c(2,0.5,3.2,1.25,3) #Waga kupionych jabłek (w kg)
# Ile jabłek w gramach kupili mężczyźni?
# 1kg=1000g
# 1 sposób
sum(zakupy[plec=="M"]*1000)
## [1] 6450
# 2 sposób
plec=c(1,0,1,1,0)
plec*(zakupy*1000)
## [1] 2000 0 3200 1250 0
sum(plec*(zakupy*1000))
## [1] 6450
# 3 sposób
sum(zakupy[c(1,3,4)])*1000
## [1] 6450
# 4 sposób
sum(zakupy[-c(2,5)])*1000
## [1] 6450
t=array(sample(1:100,replace=T),c(3,2,3))
t
## , , 1
##
## [,1] [,2]
## [1,] 47 39
## [2,] 78 1
## [3,] 28 13
##
## , , 2
##
## [,1] [,2]
## [1,] 73 55
## [2,] 33 33
## [3,] 35 33
##
## , , 3
##
## [,1] [,2]
## [1,] 8 95
## [2,] 91 12
## [3,] 71 73
array(sample(1:100,replace=T),c(3,2))
## [,1] [,2]
## [1,] 75 47
## [2,] 7 84
## [3,] 33 12
t[1,2,3]
## [1] 95
t[,,3] #Wyświetlenie 3 warstwy z tablicy t.
## [,1] [,2]
## [1,] 8 95
## [2,] 91 12
## [3,] 71 73
t[c(1,2),,2]
## [,1] [,2]
## [1,] 73 55
## [2,] 33 33
dim(t)
## [1] 3 2 3
dim(t)[2]
## [1] 2
ncol(t)
## [1] 2
dim(t)=c(3,6)
t
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 47 39 73 55 8 95
## [2,] 78 1 33 33 91 12
## [3,] 28 13 35 33 71 73
t=array(sample(1:100,replace=T),c(3,2,3))
t
## , , 1
##
## [,1] [,2]
## [1,] 98 2
## [2,] 54 33
## [3,] 47 40
##
## , , 2
##
## [,1] [,2]
## [1,] 35 21
## [2,] 83 84
## [3,] 90 63
##
## , , 3
##
## [,1] [,2]
## [1,] 68 50
## [2,] 62 40
## [3,] 33 79
apply(t,2,sd) #2 - oznacza kolumny
## [1] 23.45208 26.55079
apply(t,3,sd)[2] #3 - oznacza warstwy, co oznacza, że obliczane są odchylenia standardowe dla warstw. [2] pozwala na wybranie 2 elementu z uzyskanego wektora, czyli odchylenia standardowego dla elementów z 2-giej warstwy.
## [1] 28.69611
# Ramka posiada dane o pracownikach: imię, wiek, fakt czy ktoś złożył wypowiedzenie, staż pracy (w latach).
ramka=data.frame(c("Ola","Kamil","Maciek","Asia"),c(21,32,38,40),c(T,F,F,F),seq(2,12,3))
ramka
## c..Ola....Kamil....Maciek....Asia.. c.21..32..38..40. c.T..F..F..F.
## 1 Ola 21 TRUE
## 2 Kamil 32 FALSE
## 3 Maciek 38 FALSE
## 4 Asia 40 FALSE
## seq.2..12..3.
## 1 2
## 2 5
## 3 8
## 4 11
names(ramka)
## [1] "c..Ola....Kamil....Maciek....Asia.." "c.21..32..38..40."
## [3] "c.T..F..F..F." "seq.2..12..3."
colnames(ramka)
## [1] "c..Ola....Kamil....Maciek....Asia.." "c.21..32..38..40."
## [3] "c.T..F..F..F." "seq.2..12..3."
colnames(ramka)=c("imię","wiek","wypowiedzenie","staż pracy")
ramka
## imię wiek wypowiedzenie staż pracy
## 1 Ola 21 TRUE 2
## 2 Kamil 32 FALSE 5
## 3 Maciek 38 FALSE 8
## 4 Asia 40 FALSE 11
rownames(ramka)
## [1] "1" "2" "3" "4"
# Zmiana nazw wierszy na obserwacja 1, obserwacja 2, ... .
# 1 sposób
t1="Obserwacja"
t1
## [1] "Obserwacja"
rownames(ramka)=paste(t1,rownames(ramka))
ramka
## imię wiek wypowiedzenie staż pracy
## Obserwacja 1 Ola 21 TRUE 2
## Obserwacja 2 Kamil 32 FALSE 5
## Obserwacja 3 Maciek 38 FALSE 8
## Obserwacja 4 Asia 40 FALSE 11
# 2 sposób
rownames(ramka)= paste('obserwacja',1:length(ramka))
ramka
## imię wiek wypowiedzenie staż pracy
## obserwacja 1 Ola 21 TRUE 2
## obserwacja 2 Kamil 32 FALSE 5
## obserwacja 3 Maciek 38 FALSE 8
## obserwacja 4 Asia 40 FALSE 11
rownames(ramka)=paste("obs",1:length(ramka),sep="")
ramka
## imię wiek wypowiedzenie staż pracy
## obs1 Ola 21 TRUE 2
## obs2 Kamil 32 FALSE 5
## obs3 Maciek 38 FALSE 8
## obs4 Asia 40 FALSE 11
dimnames(ramka)
## [[1]]
## [1] "obs1" "obs2" "obs3" "obs4"
##
## [[2]]
## [1] "imię" "wiek" "wypowiedzenie" "staż pracy"
ramka[3]
## wypowiedzenie
## obs1 TRUE
## obs2 FALSE
## obs3 FALSE
## obs4 FALSE
ramka[[3]]
## [1] TRUE FALSE FALSE FALSE
mean(ramka[[4]])
## [1] 6.5
mean(ramka[4]) #Błąd, ponieważ z takiego typu nie można policzyć średniej - natomiast z wektorów można .
## Warning in mean.default(ramka[4]): argument nie jest wartością liczbową ani
## logiczną: zwracanie wartości NA
## [1] NA
class(ramka[[4]])==class(ramka[4])
## [1] FALSE
ramka["wiek"]
## wiek
## obs1 21
## obs2 32
## obs3 38
## obs4 40
ramka[["wiek"]]
## [1] 21 32 38 40
ramka$wiek
## [1] 21 32 38 40
mean(ramka$wiek)
## [1] 32.75
ramka[2,4]
## [1] 5
ramka
## imię wiek wypowiedzenie staż pracy
## obs1 Ola 21 TRUE 2
## obs2 Kamil 32 FALSE 5
## obs3 Maciek 38 FALSE 8
## obs4 Asia 40 FALSE 11
names(ramka)[4]
## [1] "staż pracy"
names(ramka)[4]="staż"
ramka
## imię wiek wypowiedzenie staż
## obs1 Ola 21 TRUE 2
## obs2 Kamil 32 FALSE 5
## obs3 Maciek 38 FALSE 8
## obs4 Asia 40 FALSE 11
ramka['obs2',]
## imię wiek wypowiedzenie staż
## obs2 Kamil 32 FALSE 5
# Jak wyświetlić dane o osobie, która złożyła wypowiedzenie?
ramka[,3]==T
## [1] TRUE FALSE FALSE FALSE
ramka[,"wypowiedzenie"]==T
## [1] TRUE FALSE FALSE FALSE
ramka[ramka[,3]==T,]
## imię wiek wypowiedzenie staż
## obs1 Ola 21 TRUE 2
ramka[ramka[,"wypowiedzenie"]==T,]
## imię wiek wypowiedzenie staż
## obs1 Ola 21 TRUE 2
sapply(ramka,class)
## imię wiek wypowiedzenie staż
## "character" "numeric" "logical" "numeric"
lapply(ramka,class)
## $imię
## [1] "character"
##
## $wiek
## [1] "numeric"
##
## $wypowiedzenie
## [1] "logical"
##
## $staż
## [1] "numeric"
#Zbiór danych: iris
data(iris)
iris
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3.0 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5.0 3.6 1.4 0.2 setosa
## 6 5.4 3.9 1.7 0.4 setosa
## 7 4.6 3.4 1.4 0.3 setosa
## 8 5.0 3.4 1.5 0.2 setosa
## 9 4.4 2.9 1.4 0.2 setosa
## 10 4.9 3.1 1.5 0.1 setosa
## 11 5.4 3.7 1.5 0.2 setosa
## 12 4.8 3.4 1.6 0.2 setosa
## 13 4.8 3.0 1.4 0.1 setosa
## 14 4.3 3.0 1.1 0.1 setosa
## 15 5.8 4.0 1.2 0.2 setosa
## 16 5.7 4.4 1.5 0.4 setosa
## 17 5.4 3.9 1.3 0.4 setosa
## 18 5.1 3.5 1.4 0.3 setosa
## 19 5.7 3.8 1.7 0.3 setosa
## 20 5.1 3.8 1.5 0.3 setosa
## 21 5.4 3.4 1.7 0.2 setosa
## 22 5.1 3.7 1.5 0.4 setosa
## 23 4.6 3.6 1.0 0.2 setosa
## 24 5.1 3.3 1.7 0.5 setosa
## 25 4.8 3.4 1.9 0.2 setosa
## 26 5.0 3.0 1.6 0.2 setosa
## 27 5.0 3.4 1.6 0.4 setosa
## 28 5.2 3.5 1.5 0.2 setosa
## 29 5.2 3.4 1.4 0.2 setosa
## 30 4.7 3.2 1.6 0.2 setosa
## 31 4.8 3.1 1.6 0.2 setosa
## 32 5.4 3.4 1.5 0.4 setosa
## 33 5.2 4.1 1.5 0.1 setosa
## 34 5.5 4.2 1.4 0.2 setosa
## 35 4.9 3.1 1.5 0.2 setosa
## 36 5.0 3.2 1.2 0.2 setosa
## 37 5.5 3.5 1.3 0.2 setosa
## 38 4.9 3.6 1.4 0.1 setosa
## 39 4.4 3.0 1.3 0.2 setosa
## 40 5.1 3.4 1.5 0.2 setosa
## 41 5.0 3.5 1.3 0.3 setosa
## 42 4.5 2.3 1.3 0.3 setosa
## 43 4.4 3.2 1.3 0.2 setosa
## 44 5.0 3.5 1.6 0.6 setosa
## 45 5.1 3.8 1.9 0.4 setosa
## 46 4.8 3.0 1.4 0.3 setosa
## 47 5.1 3.8 1.6 0.2 setosa
## 48 4.6 3.2 1.4 0.2 setosa
## 49 5.3 3.7 1.5 0.2 setosa
## 50 5.0 3.3 1.4 0.2 setosa
## 51 7.0 3.2 4.7 1.4 versicolor
## 52 6.4 3.2 4.5 1.5 versicolor
## 53 6.9 3.1 4.9 1.5 versicolor
## 54 5.5 2.3 4.0 1.3 versicolor
## 55 6.5 2.8 4.6 1.5 versicolor
## 56 5.7 2.8 4.5 1.3 versicolor
## 57 6.3 3.3 4.7 1.6 versicolor
## 58 4.9 2.4 3.3 1.0 versicolor
## 59 6.6 2.9 4.6 1.3 versicolor
## 60 5.2 2.7 3.9 1.4 versicolor
## 61 5.0 2.0 3.5 1.0 versicolor
## 62 5.9 3.0 4.2 1.5 versicolor
## 63 6.0 2.2 4.0 1.0 versicolor
## 64 6.1 2.9 4.7 1.4 versicolor
## 65 5.6 2.9 3.6 1.3 versicolor
## 66 6.7 3.1 4.4 1.4 versicolor
## 67 5.6 3.0 4.5 1.5 versicolor
## 68 5.8 2.7 4.1 1.0 versicolor
## 69 6.2 2.2 4.5 1.5 versicolor
## 70 5.6 2.5 3.9 1.1 versicolor
## 71 5.9 3.2 4.8 1.8 versicolor
## 72 6.1 2.8 4.0 1.3 versicolor
## 73 6.3 2.5 4.9 1.5 versicolor
## 74 6.1 2.8 4.7 1.2 versicolor
## 75 6.4 2.9 4.3 1.3 versicolor
## 76 6.6 3.0 4.4 1.4 versicolor
## 77 6.8 2.8 4.8 1.4 versicolor
## 78 6.7 3.0 5.0 1.7 versicolor
## 79 6.0 2.9 4.5 1.5 versicolor
## 80 5.7 2.6 3.5 1.0 versicolor
## 81 5.5 2.4 3.8 1.1 versicolor
## 82 5.5 2.4 3.7 1.0 versicolor
## 83 5.8 2.7 3.9 1.2 versicolor
## 84 6.0 2.7 5.1 1.6 versicolor
## 85 5.4 3.0 4.5 1.5 versicolor
## 86 6.0 3.4 4.5 1.6 versicolor
## 87 6.7 3.1 4.7 1.5 versicolor
## 88 6.3 2.3 4.4 1.3 versicolor
## 89 5.6 3.0 4.1 1.3 versicolor
## 90 5.5 2.5 4.0 1.3 versicolor
## 91 5.5 2.6 4.4 1.2 versicolor
## 92 6.1 3.0 4.6 1.4 versicolor
## 93 5.8 2.6 4.0 1.2 versicolor
## 94 5.0 2.3 3.3 1.0 versicolor
## 95 5.6 2.7 4.2 1.3 versicolor
## 96 5.7 3.0 4.2 1.2 versicolor
## 97 5.7 2.9 4.2 1.3 versicolor
## 98 6.2 2.9 4.3 1.3 versicolor
## 99 5.1 2.5 3.0 1.1 versicolor
## 100 5.7 2.8 4.1 1.3 versicolor
## 101 6.3 3.3 6.0 2.5 virginica
## 102 5.8 2.7 5.1 1.9 virginica
## 103 7.1 3.0 5.9 2.1 virginica
## 104 6.3 2.9 5.6 1.8 virginica
## 105 6.5 3.0 5.8 2.2 virginica
## 106 7.6 3.0 6.6 2.1 virginica
## 107 4.9 2.5 4.5 1.7 virginica
## 108 7.3 2.9 6.3 1.8 virginica
## 109 6.7 2.5 5.8 1.8 virginica
## 110 7.2 3.6 6.1 2.5 virginica
## 111 6.5 3.2 5.1 2.0 virginica
## 112 6.4 2.7 5.3 1.9 virginica
## 113 6.8 3.0 5.5 2.1 virginica
## 114 5.7 2.5 5.0 2.0 virginica
## 115 5.8 2.8 5.1 2.4 virginica
## 116 6.4 3.2 5.3 2.3 virginica
## 117 6.5 3.0 5.5 1.8 virginica
## 118 7.7 3.8 6.7 2.2 virginica
## 119 7.7 2.6 6.9 2.3 virginica
## 120 6.0 2.2 5.0 1.5 virginica
## 121 6.9 3.2 5.7 2.3 virginica
## 122 5.6 2.8 4.9 2.0 virginica
## 123 7.7 2.8 6.7 2.0 virginica
## 124 6.3 2.7 4.9 1.8 virginica
## 125 6.7 3.3 5.7 2.1 virginica
## 126 7.2 3.2 6.0 1.8 virginica
## 127 6.2 2.8 4.8 1.8 virginica
## 128 6.1 3.0 4.9 1.8 virginica
## 129 6.4 2.8 5.6 2.1 virginica
## 130 7.2 3.0 5.8 1.6 virginica
## 131 7.4 2.8 6.1 1.9 virginica
## 132 7.9 3.8 6.4 2.0 virginica
## 133 6.4 2.8 5.6 2.2 virginica
## 134 6.3 2.8 5.1 1.5 virginica
## 135 6.1 2.6 5.6 1.4 virginica
## 136 7.7 3.0 6.1 2.3 virginica
## 137 6.3 3.4 5.6 2.4 virginica
## 138 6.4 3.1 5.5 1.8 virginica
## 139 6.0 3.0 4.8 1.8 virginica
## 140 6.9 3.1 5.4 2.1 virginica
## 141 6.7 3.1 5.6 2.4 virginica
## 142 6.9 3.1 5.1 2.3 virginica
## 143 5.8 2.7 5.1 1.9 virginica
## 144 6.8 3.2 5.9 2.3 virginica
## 145 6.7 3.3 5.7 2.5 virginica
## 146 6.7 3.0 5.2 2.3 virginica
## 147 6.3 2.5 5.0 1.9 virginica
## 148 6.5 3.0 5.2 2.0 virginica
## 149 6.2 3.4 5.4 2.3 virginica
## 150 5.9 3.0 5.1 1.8 virginica
View(iris)
head(iris)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3.0 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5.0 3.6 1.4 0.2 setosa
## 6 5.4 3.9 1.7 0.4 setosa
head(iris,2)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3.0 1.4 0.2 setosa
tail(iris)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 145 6.7 3.3 5.7 2.5 virginica
## 146 6.7 3.0 5.2 2.3 virginica
## 147 6.3 2.5 5.0 1.9 virginica
## 148 6.5 3.0 5.2 2.0 virginica
## 149 6.2 3.4 5.4 2.3 virginica
## 150 5.9 3.0 5.1 1.8 virginica
dim(ramka)
## [1] 4 4
attach(iris)
Species
## [1] setosa setosa setosa setosa setosa setosa
## [7] setosa setosa setosa setosa setosa setosa
## [13] setosa setosa setosa setosa setosa setosa
## [19] setosa setosa setosa setosa setosa setosa
## [25] setosa setosa setosa setosa setosa setosa
## [31] setosa setosa setosa setosa setosa setosa
## [37] setosa setosa setosa setosa setosa setosa
## [43] setosa setosa setosa setosa setosa setosa
## [49] setosa setosa versicolor versicolor versicolor versicolor
## [55] versicolor versicolor versicolor versicolor versicolor versicolor
## [61] versicolor versicolor versicolor versicolor versicolor versicolor
## [67] versicolor versicolor versicolor versicolor versicolor versicolor
## [73] versicolor versicolor versicolor versicolor versicolor versicolor
## [79] versicolor versicolor versicolor versicolor versicolor versicolor
## [85] versicolor versicolor versicolor versicolor versicolor versicolor
## [91] versicolor versicolor versicolor versicolor versicolor versicolor
## [97] versicolor versicolor versicolor versicolor virginica virginica
## [103] virginica virginica virginica virginica virginica virginica
## [109] virginica virginica virginica virginica virginica virginica
## [115] virginica virginica virginica virginica virginica virginica
## [121] virginica virginica virginica virginica virginica virginica
## [127] virginica virginica virginica virginica virginica virginica
## [133] virginica virginica virginica virginica virginica virginica
## [139] virginica virginica virginica virginica virginica virginica
## [145] virginica virginica virginica virginica virginica virginica
## Levels: setosa versicolor virginica
detach(iris)
# Species - Jeśli ponownie wpisze się kod: Species, wówczas wystąpi błąd.
#Funkcja subset pozwala wyborać wiersze z pewnego zbioru danych.
subset(iris,Species=="virginica")
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 101 6.3 3.3 6.0 2.5 virginica
## 102 5.8 2.7 5.1 1.9 virginica
## 103 7.1 3.0 5.9 2.1 virginica
## 104 6.3 2.9 5.6 1.8 virginica
## 105 6.5 3.0 5.8 2.2 virginica
## 106 7.6 3.0 6.6 2.1 virginica
## 107 4.9 2.5 4.5 1.7 virginica
## 108 7.3 2.9 6.3 1.8 virginica
## 109 6.7 2.5 5.8 1.8 virginica
## 110 7.2 3.6 6.1 2.5 virginica
## 111 6.5 3.2 5.1 2.0 virginica
## 112 6.4 2.7 5.3 1.9 virginica
## 113 6.8 3.0 5.5 2.1 virginica
## 114 5.7 2.5 5.0 2.0 virginica
## 115 5.8 2.8 5.1 2.4 virginica
## 116 6.4 3.2 5.3 2.3 virginica
## 117 6.5 3.0 5.5 1.8 virginica
## 118 7.7 3.8 6.7 2.2 virginica
## 119 7.7 2.6 6.9 2.3 virginica
## 120 6.0 2.2 5.0 1.5 virginica
## 121 6.9 3.2 5.7 2.3 virginica
## 122 5.6 2.8 4.9 2.0 virginica
## 123 7.7 2.8 6.7 2.0 virginica
## 124 6.3 2.7 4.9 1.8 virginica
## 125 6.7 3.3 5.7 2.1 virginica
## 126 7.2 3.2 6.0 1.8 virginica
## 127 6.2 2.8 4.8 1.8 virginica
## 128 6.1 3.0 4.9 1.8 virginica
## 129 6.4 2.8 5.6 2.1 virginica
## 130 7.2 3.0 5.8 1.6 virginica
## 131 7.4 2.8 6.1 1.9 virginica
## 132 7.9 3.8 6.4 2.0 virginica
## 133 6.4 2.8 5.6 2.2 virginica
## 134 6.3 2.8 5.1 1.5 virginica
## 135 6.1 2.6 5.6 1.4 virginica
## 136 7.7 3.0 6.1 2.3 virginica
## 137 6.3 3.4 5.6 2.4 virginica
## 138 6.4 3.1 5.5 1.8 virginica
## 139 6.0 3.0 4.8 1.8 virginica
## 140 6.9 3.1 5.4 2.1 virginica
## 141 6.7 3.1 5.6 2.4 virginica
## 142 6.9 3.1 5.1 2.3 virginica
## 143 5.8 2.7 5.1 1.9 virginica
## 144 6.8 3.2 5.9 2.3 virginica
## 145 6.7 3.3 5.7 2.5 virginica
## 146 6.7 3.0 5.2 2.3 virginica
## 147 6.3 2.5 5.0 1.9 virginica
## 148 6.5 3.0 5.2 2.0 virginica
## 149 6.2 3.4 5.4 2.3 virginica
## 150 5.9 3.0 5.1 1.8 virginica
edit(ramka)
## imię wiek wypowiedzenie staż
## obs1 Ola 21 TRUE 2
## obs2 Kamil 32 FALSE 5
## obs3 Maciek 38 FALSE 8
## obs4 Asia 40 FALSE 11
ramka=edit(ramka)
fix(ramka)
##📘 Listy (list)
x=list(c("Halina","Jan"),c("siatkówka","śpiew"),
c("k","m"),c(34,40))
x
## [[1]]
## [1] "Halina" "Jan"
##
## [[2]]
## [1] "siatkówka" "śpiew"
##
## [[3]]
## [1] "k" "m"
##
## [[4]]
## [1] 34 40
x=list(imię=c("Halina","Jan"),hobby=c("siatkówka","śpiew"),
płeć=c("k","m"),wiek=c(45,30))
x
## $imię
## [1] "Halina" "Jan"
##
## $hobby
## [1] "siatkówka" "śpiew"
##
## $płeć
## [1] "k" "m"
##
## $wiek
## [1] 45 30
names(x)
## [1] "imię" "hobby" "płeć" "wiek"
str(x)
## List of 4
## $ imię : chr [1:2] "Halina" "Jan"
## $ hobby: chr [1:2] "siatkówka" "śpiew"
## $ płeć : chr [1:2] "k" "m"
## $ wiek : num [1:2] 45 30
x$wiek
## [1] 45 30
x[4]
## $wiek
## [1] 45 30
x[[4]]
## [1] 45 30
x[["wiek"]]
## [1] 45 30
x[[3]][2] #Wyświetlona zostanie płeć 2 osoby.
## [1] "m"
x$hobby[1]='czytanie' #Zamiana hobby z siatkówka na czytanie.
x
## $imię
## [1] "Halina" "Jan"
##
## $hobby
## [1] "czytanie" "śpiew"
##
## $płeć
## [1] "k" "m"
##
## $wiek
## [1] 45 30
x[[1]][3]="Ania"
x
## $imię
## [1] "Halina" "Jan" "Ania"
##
## $hobby
## [1] "czytanie" "śpiew"
##
## $płeć
## [1] "k" "m"
##
## $wiek
## [1] 45 30
x=c(x,list(konta.w.b=c(1,2)))
x
## $imię
## [1] "Halina" "Jan" "Ania"
##
## $hobby
## [1] "czytanie" "śpiew"
##
## $płeć
## [1] "k" "m"
##
## $wiek
## [1] 45 30
##
## $konta.w.b
## [1] 1 2
x=x[-5]
x
## $imię
## [1] "Halina" "Jan" "Ania"
##
## $hobby
## [1] "czytanie" "śpiew"
##
## $płeć
## [1] "k" "m"
##
## $wiek
## [1] 45 30
x[[1]][c(1,2)]
## [1] "Halina" "Jan"
edit(x) #Można edytować - dodawać, usuwać elementy zamieszczone na liście.
## $imię
## [1] "Halina" "Jan" "Ania"
##
## $hobby
## [1] "czytanie" "śpiew"
##
## $płeć
## [1] "k" "m"
##
## $wiek
## [1] 45 30
lapply(x[1],sort)
## $imię
## [1] "Ania" "Halina" "Jan"
lapply(x,sort)
## $imię
## [1] "Ania" "Halina" "Jan"
##
## $hobby
## [1] "czytanie" "śpiew"
##
## $płeć
## [1] "k" "m"
##
## $wiek
## [1] 30 45
x=lapply(x,sort)
x
## $imię
## [1] "Ania" "Halina" "Jan"
##
## $hobby
## [1] "czytanie" "śpiew"
##
## $płeć
## [1] "k" "m"
##
## $wiek
## [1] 30 45
x=12
if(x>10)
{print("nierówność jest prawdziwa",quote=F)}
## [1] nierówność jest prawdziwa
if(x>10) print("nierówność jest prawdziwa")
## [1] "nierówność jest prawdziwa"
x=7
if(x>10){
print("nierówność jest prawdziwa")
}else {
print("nierówność jest fałszywa")
}
## [1] "nierówność jest fałszywa"
liczba=sample(1:100,1)
liczba
## [1] 24
x=34
if(x==liczba) {
print(paste("wybrana liczba x jest równa",liczba))
}else{
if(x>liczba){
print(paste("wybrana liczba x jest większa od",liczba))
}else{
print(paste("wybrana liczba x jest mniejsza od", liczba))
}}
## [1] "wybrana liczba x jest większa od 24"
x=1:16
nierówność=ifelse(x>10,"nierówność jest prawdziwa","nierówność jest fałszywa")
nierówność
## [1] "nierówność jest fałszywa" "nierówność jest fałszywa"
## [3] "nierówność jest fałszywa" "nierówność jest fałszywa"
## [5] "nierówność jest fałszywa" "nierówność jest fałszywa"
## [7] "nierówność jest fałszywa" "nierówność jest fałszywa"
## [9] "nierówność jest fałszywa" "nierówność jest fałszywa"
## [11] "nierówność jest prawdziwa" "nierówność jest prawdziwa"
## [13] "nierówność jest prawdziwa" "nierówność jest prawdziwa"
## [15] "nierówność jest prawdziwa" "nierówność jest prawdziwa"
data.frame(nierówność)
## nierówność
## 1 nierówność jest fałszywa
## 2 nierówność jest fałszywa
## 3 nierówność jest fałszywa
## 4 nierówność jest fałszywa
## 5 nierówność jest fałszywa
## 6 nierówność jest fałszywa
## 7 nierówność jest fałszywa
## 8 nierówność jest fałszywa
## 9 nierówność jest fałszywa
## 10 nierówność jest fałszywa
## 11 nierówność jest prawdziwa
## 12 nierówność jest prawdziwa
## 13 nierówność jest prawdziwa
## 14 nierówność jest prawdziwa
## 15 nierówność jest prawdziwa
## 16 nierówność jest prawdziwa
for(i in 1:5) print(i)
## [1] 1
## [1] 2
## [1] 3
## [1] 4
## [1] 5
for(i in 1:5)
{
print(i)
}
## [1] 1
## [1] 2
## [1] 3
## [1] 4
## [1] 5
z=1:8
for(i in z)
{
print(i*10)
}
## [1] 10
## [1] 20
## [1] 30
## [1] 40
## [1] 50
## [1] 60
## [1] 70
## [1] 80
# Wyznaczenie sumy pierwszych 20 liczb naturalnych (bez zera).
suma=0
liczby=1:20
for(i in liczby)
{
suma=suma+i
}
suma
## [1] 210
# Wyznaczenie sumy elementów wektora x.
x=c(23,45,13,22,11,-54)
suma=0
for(i in 1:length(x))
{
suma=suma+x[i]
}
suma
## [1] 60
# Wyznaczenie sumy różnic elementów wektora x.
x=c(12,34,4,-15,4,0)
suma=0
for(i in 2:length(x))
{
suma=suma+(x[i]-x[i-1]) #Nawias tutaj jest niepotrzebny, ale podkreśla czynność odejmowania.
}
suma
## [1] -12
# Wyświetlenie kolejnych różnic elementów wektora x.
x=c(12,34,4,-15,4,0)
for(i in 2:length(x))
{
print(x[i]-x[i-1])
}
## [1] 22
## [1] -30
## [1] -19
## [1] 19
## [1] -4
# Wyświetlenie pierwszych 9 licz naturalnych (bez 0).
i=1
while(i<10)
{
print(i)
i=i+1
}
## [1] 1
## [1] 2
## [1] 3
## [1] 4
## [1] 5
## [1] 6
## [1] 7
## [1] 8
## [1] 9
# Wyznaczenie sumy elementów wektora x.
x=c(12,-30,4,2,67,-18)
i=1
suma=0
while(i<=length(x))
{
suma=suma+x[i]
i=i+1
}
suma
## [1] 37
sum(x) #Sprawdzenie poprawności uzyskanych wyników.
## [1] 37
i=1
repeat
{
print(paste("powtórzenie nr.",i))
i=i+1
if(i>5) break
}
## [1] "powtórzenie nr. 1"
## [1] "powtórzenie nr. 2"
## [1] "powtórzenie nr. 3"
## [1] "powtórzenie nr. 4"
## [1] "powtórzenie nr. 5"
# Wyświetlić kolejne 10 potęg liczby 2 za pomocą:
#Pętli for
#1 sposób
for(i in 1:10)
{
print(2^i)
}
## [1] 2
## [1] 4
## [1] 8
## [1] 16
## [1] 32
## [1] 64
## [1] 128
## [1] 256
## [1] 512
## [1] 1024
#2 sposób
x=1:10
x
## [1] 1 2 3 4 5 6 7 8 9 10
y=c()
for(i in 1:length(x))
{
y[i]=2^x[i]
}
y
## [1] 2 4 8 16 32 64 128 256 512 1024
#Pętli while
#1 sposób
i=1
while(i<=10)
{
print(2^i)
i=i+1
}
## [1] 2
## [1] 4
## [1] 8
## [1] 16
## [1] 32
## [1] 64
## [1] 128
## [1] 256
## [1] 512
## [1] 1024
#2 sposób
i=1
y=c()
while(i<=length(x))
{
y[i]=2^x[i]
i=i+1
}
y
## [1] 2 4 8 16 32 64 128 256 512 1024
#Pętli repeat
#1 sposób
i=1
repeat
{
print(2^i)
i=i+1
if(i>10) break
}
## [1] 2
## [1] 4
## [1] 8
## [1] 16
## [1] 32
## [1] 64
## [1] 128
## [1] 256
## [1] 512
## [1] 1024
#2 sposób
i=1
y=c()
repeat
{
y[i]=2^x[i]
i=i+1
if(i>length(x))break
}
y
## [1] 2 4 8 16 32 64 128 256 512 1024
# Napisać pętlę, która będzie wyświetlała kolejne 10 potęg liczby 3
# i będzie pokazywała komunikat: 3 do potęgi… wynosi….
x=1:10
x
## [1] 1 2 3 4 5 6 7 8 9 10
y=c()
for(i in 1:length(x))
{
y[i]=2^x[i]
print(paste("2 do potęgi",i,"wynosi",y[i]))
}
## [1] "2 do potęgi 1 wynosi 2"
## [1] "2 do potęgi 2 wynosi 4"
## [1] "2 do potęgi 3 wynosi 8"
## [1] "2 do potęgi 4 wynosi 16"
## [1] "2 do potęgi 5 wynosi 32"
## [1] "2 do potęgi 6 wynosi 64"
## [1] "2 do potęgi 7 wynosi 128"
## [1] "2 do potęgi 8 wynosi 256"
## [1] "2 do potęgi 9 wynosi 512"
## [1] "2 do potęgi 10 wynosi 1024"
# Pętla wyświetlająca komentarz: "liczba ... jest parzysta"
# lub "liczba ... jest nieparzysta", w zależności od elementów wektora x.
x=c(21,52,35,12,25)
for(i in 1:length(x))
{
if(x[i]%%2==0){
print(paste("Liczba",x[i],"jest parzysta"))
}else{
print(paste("Liczba",x[i],"jest nieparzysta"))
}
}
## [1] "Liczba 21 jest nieparzysta"
## [1] "Liczba 52 jest parzysta"
## [1] "Liczba 35 jest nieparzysta"
## [1] "Liczba 12 jest parzysta"
## [1] "Liczba 25 jest nieparzysta"
# Napisać kod wyświetlający najpierw sumę pierwszego elementu z wektora x
# z kolejnymi elementami wektora y,
# a później sumę drugiego elementu wektora x z kolejnymi elementami wektora y itd.
x=c(12,2,3,4)
y=c(5,4,8,7)
for(i in 1:length(x))
{
for(j in 1:length(y))
{
print(x[i]+y[j])
}
}
## [1] 17
## [1] 16
## [1] 20
## [1] 19
## [1] 7
## [1] 6
## [1] 10
## [1] 9
## [1] 8
## [1] 7
## [1] 11
## [1] 10
## [1] 9
## [1] 8
## [1] 12
## [1] 11
x=c(-2,4,6,10,-3)
y=c(7,5,-12,4,-1)
pmin(x,y)
## [1] -2 4 -12 4 -3
pmax(x,y)
## [1] 7 5 6 10 -1
sum(x)
## [1] 15
mean(x)
## [1] 3
abs(x)
## [1] 2 4 6 10 3
min(x)
## [1] -3
max(x)
## [1] 10
median(x)
## [1] 4
quantile(x)
## 0% 25% 50% 75% 100%
## -3 -2 4 6 10
quantile(x,c(0.75))
## 75%
## 6
quantile(x,seq(0.1,0.9,0.1))
## 10% 20% 30% 40% 50% 60% 70% 80% 90%
## -2.6 -2.2 -0.8 1.6 4.0 4.8 5.6 6.8 8.4
wariancja=sum((x-mean(x))^2)/length(x)
wariancja
## [1] 24
wariancja_s=sum((x-mean(x))^2)/(length(x)-1)
wariancja_s
## [1] 30
var(x)
## [1] 30
odch_st=sqrt(wariancja)
odch_st
## [1] 4.898979
odch_st_s=sqrt(wariancja_s)
odch_st_s
## [1] 5.477226
o_st=sd(x)
o_st
## [1] 5.477226
x=c(23,NA,2,-12,32)
mean(x)
## [1] NA
mean(x,na.rm=TRUE)
## [1] 11.25
#Dzielenie modulo.
10%%2
## [1] 0
10%%4
## [1] 2
# Konstrukcja funkcji obliczającej i zwracającej sumę liczb.
suma=function(a,b){
a+b
}
suma(3,5) #Suma liczb 3 i 5, gdzie a=3 i b=5.
## [1] 8
# Poniższy kod nie zwróci wyniku.
suma=function(a,b){
s=a+b
}
suma(3,5)
# s
# Obiekt s nie jest zwracany, bo istnieje w funkcji,
# ale nie w przestrzeni nazw, obiektów R.
# Funkcja return pozwala na zwracanie wyniku.
suma=function(a,b){
s=a+b
return(s)
}
suma(3,5)
## [1] 8
suma=function(a,b){
s=a+b
list(suma=s)
}
suma(3,5)
## $suma
## [1] 8
# Funkcja użytkowanika zwracająca sumę, różnicę, iloczyn, iloraz i potęgę liczb.
matma=function(a,b){
s=a+b
r=a-b
il=a/b
ilocz=a*b
p=a^b
list(suma=s,różnica=r,iloraz=il,iloczyn=ilocz,potęga=p)
}
matma(4,3)
## $suma
## [1] 7
##
## $różnica
## [1] 1
##
## $iloraz
## [1] 1.333333
##
## $iloczyn
## [1] 12
##
## $potęga
## [1] 64
# Wyświetlenie iloczynu liczb.
matma(4,3)$iloczyn
## [1] 12
matma(4,3)[4]
## $iloczyn
## [1] 12
matma(4,3)[[4]]
## [1] 12
# Obliczenia w funkcji "matma" można wykonać
# nie tylko dla pojedynczych wartości, ale i dla wektorów.
x=1:5
y=c(2,5,1,3,2)
matma(x,y)
## $suma
## [1] 3 7 4 7 7
##
## $różnica
## [1] -1 -3 2 1 3
##
## $iloraz
## [1] 0.500000 0.400000 3.000000 1.333333 2.500000
##
## $iloczyn
## [1] 2 10 3 12 10
##
## $potęga
## [1] 1 32 3 64 25
# Funkcja zwracająca 4 największe wartości z wektora liczb.
x=1:20
największe=function(a){
s=sort(a,decreasing=T) #Dane sortowane są malejąco.
s[1:4] #Z danych posortowanych malejąco wybierane są 4 pierwsze wartości.
}
największe(x)
## [1] 20 19 18 17
# Funkcja użytkownika, która zwraca
# wartość minimalną, maksymalną, średnią,
# odchylenie ćwiartkowe i współczynnik asymetrii Yule'a Kendall'a.
f=function(a){
m=min(a)
mx=max(a)
s=mean(a)
o=sd(a)
q1=quantile(a,0.25)[[1]]
q2=quantile(a,0.5)[[1]]
q3=quantile(a,0.75)[[1]]
w=((q3-q2)-(q2-q1))/(q3-q1)
list(minimum=m,maksimum=mx,średnia=s,odchylenie_ćwiartkowe=o,wsp_asymetrii=w)
}
wektor=c(12,3,4,65,32)
f(wektor)
## $minimum
## [1] 3
##
## $maksimum
## [1] 65
##
## $średnia
## [1] 23.2
##
## $odchylenie_ćwiartkowe
## [1] 26.10939
##
## $wsp_asymetrii
## [1] 0.4285714
obliczenia=function(a=99,b=12){ #W tej linijce są definiowane wartości domyślne argumentów a i b.
s=a+b
r=a-b
il=a/b
ilocz=a*b
p=a^b
list(suma=s,różnica=r,iloraz=il,iloczyn=ilocz,potęga=p)
}
obliczenia(b=3) #Funkcja użytkownika zostanie wykonana dla a=99 (wartość domyślna) i b=3.
## $suma
## [1] 102
##
## $różnica
## [1] 96
##
## $iloraz
## [1] 33
##
## $iloczyn
## [1] 297
##
## $potęga
## [1] 970299
obliczenia(23) #Funkcja użytkownika zostanie wykonana dla a=23 i b=12 (wartość domyślna). 23 stoi na pierwszym miejscu i zostało potraktowane jako a, ponieważ a znajduje się na 1 miejscu w zapisie function().
## $suma
## [1] 35
##
## $różnica
## [1] 11
##
## $iloraz
## [1] 1.916667
##
## $iloczyn
## [1] 276
##
## $potęga
## [1] 2.191462e+16
obliczenia(3,4)
## $suma
## [1] 7
##
## $różnica
## [1] -1
##
## $iloraz
## [1] 0.75
##
## $iloczyn
## [1] 12
##
## $potęga
## [1] 81
# Uwaga. Przy eksporcie i później imporcie danych należy dostosować ścieżki dostępu
# do plików do własnego komputera.
dane=head(swiss) #Dane do eksportu.
dane
## Fertility Agriculture Examination Education Catholic
## Courtelary 80.2 17.0 15 12 9.96
## Delemont 83.1 45.1 6 9 84.84
## Franches-Mnt 92.5 39.7 5 5 93.40
## Moutier 85.8 36.5 12 7 33.77
## Neuveville 76.9 43.5 17 15 5.16
## Porrentruy 76.1 35.3 9 7 90.57
## Infant.Mortality
## Courtelary 22.2
## Delemont 22.2
## Franches-Mnt 20.2
## Moutier 20.3
## Neuveville 20.6
## Porrentruy 26.6
write.table(dane,file="swiss_dane.txt",quote=F, row.names=T,col.names=T,sep="\t")
# Dla zapisania pliku w ustonym katalogu przykładowa komenda może być następująca:
# write.table(dane,file="C:/Users/Ania/Desktop/swiss_dane.txt",quote=F,row.names=T,col.names=T,sep="\t")
write.csv(dane,"swiss_dane2.csv")
write.csv2(dane,"swiss_dane3.csv")
im1=read.table("swiss_dane.txt",header=T,sep="\t")
# Dla odczytu pliku a ustalonego katalogu przykładowa komenda może być następująca:
# im1=read.table("C:/Users/Ania/Desktop/swiss_dane.txt",header=T,sep="\t")
im1
## Fertility Agriculture Examination Education Catholic
## Courtelary 80.2 17.0 15 12 9.96
## Delemont 83.1 45.1 6 9 84.84
## Franches-Mnt 92.5 39.7 5 5 93.40
## Moutier 85.8 36.5 12 7 33.77
## Neuveville 76.9 43.5 17 15 5.16
## Porrentruy 76.1 35.3 9 7 90.57
## Infant.Mortality
## Courtelary 22.2
## Delemont 22.2
## Franches-Mnt 20.2
## Moutier 20.3
## Neuveville 20.6
## Porrentruy 26.6
im2=read.csv2("swiss_dane3.csv")
head(im2)
## X Fertility Agriculture Examination Education Catholic
## 1 Courtelary 80.2 17.0 15 12 9.96
## 2 Delemont 83.1 45.1 6 9 84.84
## 3 Franches-Mnt 92.5 39.7 5 5 93.40
## 4 Moutier 85.8 36.5 12 7 33.77
## 5 Neuveville 76.9 43.5 17 15 5.16
## 6 Porrentruy 76.1 35.3 9 7 90.57
## Infant.Mortality
## 1 22.2
## 2 22.2
## 3 20.2
## 4 20.3
## 5 20.6
## 6 26.6
im3=read.csv("swiss_dane2.csv")
head(im3)
## X Fertility Agriculture Examination Education Catholic
## 1 Courtelary 80.2 17.0 15 12 9.96
## 2 Delemont 83.1 45.1 6 9 84.84
## 3 Franches-Mnt 92.5 39.7 5 5 93.40
## 4 Moutier 85.8 36.5 12 7 33.77
## 5 Neuveville 76.9 43.5 17 15 5.16
## 6 Porrentruy 76.1 35.3 9 7 90.57
## Infant.Mortality
## 1 22.2
## 2 22.2
## 3 20.2
## 4 20.3
## 5 20.6
## 6 26.6
# Import danych za pomocą wklejenia danych ze schowka.
# Na początku pisze się kod, a następnie kopiuje dane, a potem wykonuje kod.
# Dane można skopiować również na początku.
im4=read.delim2("clipboard",header=T)
im4
## cena wartość ilość
## 1 5.64 231.30 41.0
## 2 5.94 246.93 41.6
## 3 5.79 237.34 41.0
## 4 5.49 225.09 41.0
## 5 5.58 223.26 40.0
## 6 5.68 227.20 40.0
## 7 5.09 193.42 38.0
#Sprawdzenie jaki jest katalog roboczy - gdzie się znajduje.
getwd()
## [1] "E:/Doc_UE/RStudio/Samouczek"
# Zmiana katalogu roboczego.
# Zamieniamy obecny katalog roboczy, żeby pracować w innym katalogu i nie musieć podawać ścieżki dostępu do plików przy imporcie czy eksporcie danych.
setwd("C:/Users/Ania/Desktop")
## Error in setwd("C:/Users/Ania/Desktop"): nie można zmienić katalogu roboczego
getwd() #Faktycznie katalog roboczy został zmieniony.
## [1] "E:/Doc_UE/RStudio/Samouczek"
# Eksport pliku do folderu o domyślnej lokalizacji.
write.csv2(dane,"iris1.csv") #Nie podaje się już ścieżki dostępu, tylko jak ma się nazywać plik zz danymi i jego rozszerzenie (w cudzysłowie).
# Import pliku z folderu o domyślnej lokalizacji.
read.csv2("iris1.csv") #Nie podaje się już ścieżki dostępu do pliku, tylko w cudzysłowie zamieszcza się nazwę i rozszerzenie pliku, który chcesię zaimportować do R.
## X Fertility Agriculture Examination Education Catholic
## 1 Courtelary 80.2 17.0 15 12 9.96
## 2 Delemont 83.1 45.1 6 9 84.84
## 3 Franches-Mnt 92.5 39.7 5 5 93.40
## 4 Moutier 85.8 36.5 12 7 33.77
## 5 Neuveville 76.9 43.5 17 15 5.16
## 6 Porrentruy 76.1 35.3 9 7 90.57
## Infant.Mortality
## 1 22.2
## 2 22.2
## 3 20.2
## 4 20.3
## 5 20.6
## 6 26.6
x=c(65,43,21,43,57)
y=c(0,0.5,3,2.2,5)
plot(x)
plot(x,type="l")
plot(x,type="p")
plot(x,type="b")
plot(x,type="h")
plot(x,type="s")
plot(x,type="l",col=6)
plot(x,type="l",col=6,lwd=3)
plot(x,type="l",col=6,lwd=3,lty=5)
plot(x,type="l",col=6,lwd=3,lty=2)
plot(x,y)
plot(x,y,lwd=2)
plot(x,y,lwd=2,main="Czas sprzątania względem wieku")
plot(x,y,lwd=2,main="Czas sprzątania względem wieku",xlab="wiek")
plot(x,y,lwd=2,main="Czas sprzątania względem wieku",xlab="wiek",ylab="czas sprzątania")
?AirPassengers
plot(AirPassengers)
class(AirPassengers)
## [1] "ts"
trees
## Girth Height Volume
## 1 8.3 70 10.3
## 2 8.6 65 10.3
## 3 8.8 63 10.2
## 4 10.5 72 16.4
## 5 10.7 81 18.8
## 6 10.8 83 19.7
## 7 11.0 66 15.6
## 8 11.0 75 18.2
## 9 11.1 80 22.6
## 10 11.2 75 19.9
## 11 11.3 79 24.2
## 12 11.4 76 21.0
## 13 11.4 76 21.4
## 14 11.7 69 21.3
## 15 12.0 75 19.1
## 16 12.9 74 22.2
## 17 12.9 85 33.8
## 18 13.3 86 27.4
## 19 13.7 71 25.7
## 20 13.8 64 24.9
## 21 14.0 78 34.5
## 22 14.2 80 31.7
## 23 14.5 74 36.3
## 24 16.0 72 38.3
## 25 16.3 77 42.6
## 26 17.3 81 55.4
## 27 17.5 82 55.7
## 28 17.9 80 58.3
## 29 18.0 80 51.5
## 30 18.0 80 51.0
## 31 20.6 87 77.0
hist(trees$Height)
hist(trees$Height,prob=T)
hist(trees$Height,freq=F)
par(mfrow=c(2,1))
hist(trees$Height)
hist(trees$Height,prob=T)
par(mfrow=c(1,1))
hist(trees$Height)
hist(trees$Height,breaks=10)
hist(trees$Height,breaks=c(60,70,80,90,100))
hist(trees$Height,col="pink")
colors()
## [1] "white" "aliceblue" "antiquewhite"
## [4] "antiquewhite1" "antiquewhite2" "antiquewhite3"
## [7] "antiquewhite4" "aquamarine" "aquamarine1"
## [10] "aquamarine2" "aquamarine3" "aquamarine4"
## [13] "azure" "azure1" "azure2"
## [16] "azure3" "azure4" "beige"
## [19] "bisque" "bisque1" "bisque2"
## [22] "bisque3" "bisque4" "black"
## [25] "blanchedalmond" "blue" "blue1"
## [28] "blue2" "blue3" "blue4"
## [31] "blueviolet" "brown" "brown1"
## [34] "brown2" "brown3" "brown4"
## [37] "burlywood" "burlywood1" "burlywood2"
## [40] "burlywood3" "burlywood4" "cadetblue"
## [43] "cadetblue1" "cadetblue2" "cadetblue3"
## [46] "cadetblue4" "chartreuse" "chartreuse1"
## [49] "chartreuse2" "chartreuse3" "chartreuse4"
## [52] "chocolate" "chocolate1" "chocolate2"
## [55] "chocolate3" "chocolate4" "coral"
## [58] "coral1" "coral2" "coral3"
## [61] "coral4" "cornflowerblue" "cornsilk"
## [64] "cornsilk1" "cornsilk2" "cornsilk3"
## [67] "cornsilk4" "cyan" "cyan1"
## [70] "cyan2" "cyan3" "cyan4"
## [73] "darkblue" "darkcyan" "darkgoldenrod"
## [76] "darkgoldenrod1" "darkgoldenrod2" "darkgoldenrod3"
## [79] "darkgoldenrod4" "darkgray" "darkgreen"
## [82] "darkgrey" "darkkhaki" "darkmagenta"
## [85] "darkolivegreen" "darkolivegreen1" "darkolivegreen2"
## [88] "darkolivegreen3" "darkolivegreen4" "darkorange"
## [91] "darkorange1" "darkorange2" "darkorange3"
## [94] "darkorange4" "darkorchid" "darkorchid1"
## [97] "darkorchid2" "darkorchid3" "darkorchid4"
## [100] "darkred" "darksalmon" "darkseagreen"
## [103] "darkseagreen1" "darkseagreen2" "darkseagreen3"
## [106] "darkseagreen4" "darkslateblue" "darkslategray"
## [109] "darkslategray1" "darkslategray2" "darkslategray3"
## [112] "darkslategray4" "darkslategrey" "darkturquoise"
## [115] "darkviolet" "deeppink" "deeppink1"
## [118] "deeppink2" "deeppink3" "deeppink4"
## [121] "deepskyblue" "deepskyblue1" "deepskyblue2"
## [124] "deepskyblue3" "deepskyblue4" "dimgray"
## [127] "dimgrey" "dodgerblue" "dodgerblue1"
## [130] "dodgerblue2" "dodgerblue3" "dodgerblue4"
## [133] "firebrick" "firebrick1" "firebrick2"
## [136] "firebrick3" "firebrick4" "floralwhite"
## [139] "forestgreen" "gainsboro" "ghostwhite"
## [142] "gold" "gold1" "gold2"
## [145] "gold3" "gold4" "goldenrod"
## [148] "goldenrod1" "goldenrod2" "goldenrod3"
## [151] "goldenrod4" "gray" "gray0"
## [154] "gray1" "gray2" "gray3"
## [157] "gray4" "gray5" "gray6"
## [160] "gray7" "gray8" "gray9"
## [163] "gray10" "gray11" "gray12"
## [166] "gray13" "gray14" "gray15"
## [169] "gray16" "gray17" "gray18"
## [172] "gray19" "gray20" "gray21"
## [175] "gray22" "gray23" "gray24"
## [178] "gray25" "gray26" "gray27"
## [181] "gray28" "gray29" "gray30"
## [184] "gray31" "gray32" "gray33"
## [187] "gray34" "gray35" "gray36"
## [190] "gray37" "gray38" "gray39"
## [193] "gray40" "gray41" "gray42"
## [196] "gray43" "gray44" "gray45"
## [199] "gray46" "gray47" "gray48"
## [202] "gray49" "gray50" "gray51"
## [205] "gray52" "gray53" "gray54"
## [208] "gray55" "gray56" "gray57"
## [211] "gray58" "gray59" "gray60"
## [214] "gray61" "gray62" "gray63"
## [217] "gray64" "gray65" "gray66"
## [220] "gray67" "gray68" "gray69"
## [223] "gray70" "gray71" "gray72"
## [226] "gray73" "gray74" "gray75"
## [229] "gray76" "gray77" "gray78"
## [232] "gray79" "gray80" "gray81"
## [235] "gray82" "gray83" "gray84"
## [238] "gray85" "gray86" "gray87"
## [241] "gray88" "gray89" "gray90"
## [244] "gray91" "gray92" "gray93"
## [247] "gray94" "gray95" "gray96"
## [250] "gray97" "gray98" "gray99"
## [253] "gray100" "green" "green1"
## [256] "green2" "green3" "green4"
## [259] "greenyellow" "grey" "grey0"
## [262] "grey1" "grey2" "grey3"
## [265] "grey4" "grey5" "grey6"
## [268] "grey7" "grey8" "grey9"
## [271] "grey10" "grey11" "grey12"
## [274] "grey13" "grey14" "grey15"
## [277] "grey16" "grey17" "grey18"
## [280] "grey19" "grey20" "grey21"
## [283] "grey22" "grey23" "grey24"
## [286] "grey25" "grey26" "grey27"
## [289] "grey28" "grey29" "grey30"
## [292] "grey31" "grey32" "grey33"
## [295] "grey34" "grey35" "grey36"
## [298] "grey37" "grey38" "grey39"
## [301] "grey40" "grey41" "grey42"
## [304] "grey43" "grey44" "grey45"
## [307] "grey46" "grey47" "grey48"
## [310] "grey49" "grey50" "grey51"
## [313] "grey52" "grey53" "grey54"
## [316] "grey55" "grey56" "grey57"
## [319] "grey58" "grey59" "grey60"
## [322] "grey61" "grey62" "grey63"
## [325] "grey64" "grey65" "grey66"
## [328] "grey67" "grey68" "grey69"
## [331] "grey70" "grey71" "grey72"
## [334] "grey73" "grey74" "grey75"
## [337] "grey76" "grey77" "grey78"
## [340] "grey79" "grey80" "grey81"
## [343] "grey82" "grey83" "grey84"
## [346] "grey85" "grey86" "grey87"
## [349] "grey88" "grey89" "grey90"
## [352] "grey91" "grey92" "grey93"
## [355] "grey94" "grey95" "grey96"
## [358] "grey97" "grey98" "grey99"
## [361] "grey100" "honeydew" "honeydew1"
## [364] "honeydew2" "honeydew3" "honeydew4"
## [367] "hotpink" "hotpink1" "hotpink2"
## [370] "hotpink3" "hotpink4" "indianred"
## [373] "indianred1" "indianred2" "indianred3"
## [376] "indianred4" "ivory" "ivory1"
## [379] "ivory2" "ivory3" "ivory4"
## [382] "khaki" "khaki1" "khaki2"
## [385] "khaki3" "khaki4" "lavender"
## [388] "lavenderblush" "lavenderblush1" "lavenderblush2"
## [391] "lavenderblush3" "lavenderblush4" "lawngreen"
## [394] "lemonchiffon" "lemonchiffon1" "lemonchiffon2"
## [397] "lemonchiffon3" "lemonchiffon4" "lightblue"
## [400] "lightblue1" "lightblue2" "lightblue3"
## [403] "lightblue4" "lightcoral" "lightcyan"
## [406] "lightcyan1" "lightcyan2" "lightcyan3"
## [409] "lightcyan4" "lightgoldenrod" "lightgoldenrod1"
## [412] "lightgoldenrod2" "lightgoldenrod3" "lightgoldenrod4"
## [415] "lightgoldenrodyellow" "lightgray" "lightgreen"
## [418] "lightgrey" "lightpink" "lightpink1"
## [421] "lightpink2" "lightpink3" "lightpink4"
## [424] "lightsalmon" "lightsalmon1" "lightsalmon2"
## [427] "lightsalmon3" "lightsalmon4" "lightseagreen"
## [430] "lightskyblue" "lightskyblue1" "lightskyblue2"
## [433] "lightskyblue3" "lightskyblue4" "lightslateblue"
## [436] "lightslategray" "lightslategrey" "lightsteelblue"
## [439] "lightsteelblue1" "lightsteelblue2" "lightsteelblue3"
## [442] "lightsteelblue4" "lightyellow" "lightyellow1"
## [445] "lightyellow2" "lightyellow3" "lightyellow4"
## [448] "limegreen" "linen" "magenta"
## [451] "magenta1" "magenta2" "magenta3"
## [454] "magenta4" "maroon" "maroon1"
## [457] "maroon2" "maroon3" "maroon4"
## [460] "mediumaquamarine" "mediumblue" "mediumorchid"
## [463] "mediumorchid1" "mediumorchid2" "mediumorchid3"
## [466] "mediumorchid4" "mediumpurple" "mediumpurple1"
## [469] "mediumpurple2" "mediumpurple3" "mediumpurple4"
## [472] "mediumseagreen" "mediumslateblue" "mediumspringgreen"
## [475] "mediumturquoise" "mediumvioletred" "midnightblue"
## [478] "mintcream" "mistyrose" "mistyrose1"
## [481] "mistyrose2" "mistyrose3" "mistyrose4"
## [484] "moccasin" "navajowhite" "navajowhite1"
## [487] "navajowhite2" "navajowhite3" "navajowhite4"
## [490] "navy" "navyblue" "oldlace"
## [493] "olivedrab" "olivedrab1" "olivedrab2"
## [496] "olivedrab3" "olivedrab4" "orange"
## [499] "orange1" "orange2" "orange3"
## [502] "orange4" "orangered" "orangered1"
## [505] "orangered2" "orangered3" "orangered4"
## [508] "orchid" "orchid1" "orchid2"
## [511] "orchid3" "orchid4" "palegoldenrod"
## [514] "palegreen" "palegreen1" "palegreen2"
## [517] "palegreen3" "palegreen4" "paleturquoise"
## [520] "paleturquoise1" "paleturquoise2" "paleturquoise3"
## [523] "paleturquoise4" "palevioletred" "palevioletred1"
## [526] "palevioletred2" "palevioletred3" "palevioletred4"
## [529] "papayawhip" "peachpuff" "peachpuff1"
## [532] "peachpuff2" "peachpuff3" "peachpuff4"
## [535] "peru" "pink" "pink1"
## [538] "pink2" "pink3" "pink4"
## [541] "plum" "plum1" "plum2"
## [544] "plum3" "plum4" "powderblue"
## [547] "purple" "purple1" "purple2"
## [550] "purple3" "purple4" "red"
## [553] "red1" "red2" "red3"
## [556] "red4" "rosybrown" "rosybrown1"
## [559] "rosybrown2" "rosybrown3" "rosybrown4"
## [562] "royalblue" "royalblue1" "royalblue2"
## [565] "royalblue3" "royalblue4" "saddlebrown"
## [568] "salmon" "salmon1" "salmon2"
## [571] "salmon3" "salmon4" "sandybrown"
## [574] "seagreen" "seagreen1" "seagreen2"
## [577] "seagreen3" "seagreen4" "seashell"
## [580] "seashell1" "seashell2" "seashell3"
## [583] "seashell4" "sienna" "sienna1"
## [586] "sienna2" "sienna3" "sienna4"
## [589] "skyblue" "skyblue1" "skyblue2"
## [592] "skyblue3" "skyblue4" "slateblue"
## [595] "slateblue1" "slateblue2" "slateblue3"
## [598] "slateblue4" "slategray" "slategray1"
## [601] "slategray2" "slategray3" "slategray4"
## [604] "slategrey" "snow" "snow1"
## [607] "snow2" "snow3" "snow4"
## [610] "springgreen" "springgreen1" "springgreen2"
## [613] "springgreen3" "springgreen4" "steelblue"
## [616] "steelblue1" "steelblue2" "steelblue3"
## [619] "steelblue4" "tan" "tan1"
## [622] "tan2" "tan3" "tan4"
## [625] "thistle" "thistle1" "thistle2"
## [628] "thistle3" "thistle4" "tomato"
## [631] "tomato1" "tomato2" "tomato3"
## [634] "tomato4" "turquoise" "turquoise1"
## [637] "turquoise2" "turquoise3" "turquoise4"
## [640] "violet" "violetred" "violetred1"
## [643] "violetred2" "violetred3" "violetred4"
## [646] "wheat" "wheat1" "wheat2"
## [649] "wheat3" "wheat4" "whitesmoke"
## [652] "yellow" "yellow1" "yellow2"
## [655] "yellow3" "yellow4" "yellowgreen"
sample(colors(),10)
## [1] "darkorange" "mediumpurple1" "springgreen2" "grey76"
## [5] "gray79" "goldenrod3" "grey84" "gray65"
## [9] "lightseagreen" "gray6"
hist(trees$Height,col=sample(colors(),6))
hist(trees$Height,border="blue",col="pink")
hist(trees$Height,col=rainbow(3))
hist(trees$Height,col=c("blue","pink","yellow"))
hist(trees$Height,border="tomato1",breaks=c(60,70,80,90,100),col="pink")
hist(trees$Height,col=c("blue","pink","yellow","grey"))
boxplot(trees$Height,col="red")
head(trees)
## Girth Height Volume
## 1 8.3 70 10.3
## 2 8.6 65 10.3
## 3 8.8 63 10.2
## 4 10.5 72 16.4
## 5 10.7 81 18.8
## 6 10.8 83 19.7
plot(trees$Height,trees$Volume)
pairs(trees)
head(chickwts)
## weight feed
## 1 179 horsebean
## 2 160 horsebean
## 3 136 horsebean
## 4 227 horsebean
## 5 217 horsebean
## 6 168 horsebean
chickwts$feed
## [1] horsebean horsebean horsebean horsebean horsebean horsebean horsebean
## [8] horsebean horsebean horsebean linseed linseed linseed linseed
## [15] linseed linseed linseed linseed linseed linseed linseed
## [22] linseed soybean soybean soybean soybean soybean soybean
## [29] soybean soybean soybean soybean soybean soybean soybean
## [36] soybean sunflower sunflower sunflower sunflower sunflower sunflower
## [43] sunflower sunflower sunflower sunflower sunflower sunflower meatmeal
## [50] meatmeal meatmeal meatmeal meatmeal meatmeal meatmeal meatmeal
## [57] meatmeal meatmeal meatmeal casein casein casein casein
## [64] casein casein casein casein casein casein casein
## [71] casein
## Levels: casein horsebean linseed meatmeal soybean sunflower
# barplot(chickwts$feed)
# Powyższy kod nie zadziała, ponieważ dane powinny być wektorem lub macierzą.
t=table(chickwts$feed)
t
##
## casein horsebean linseed meatmeal soybean sunflower
## 12 10 12 11 14 12
barplot(t)
pie(t)
procenty=round(prop.table(t)*100,1)
procenty
##
## casein horsebean linseed meatmeal soybean sunflower
## 16.9 14.1 16.9 15.5 19.7 16.9
pie(t,labels=paste(names(procenty),procenty,"%"))
pie(t,labels=paste(names(t),procenty,"%"))
# Elementy rachunku prawdopodobieństwa: generowanie wartości z rozkładów, gęstość, dystrybuanta i kwantyle.
?rnorm
rnorm(20)
## [1] -0.7920340 -0.7780261 0.1799730 0.1807542 -2.0257290 -2.5850157
## [7] -1.6568266 -0.8487349 -0.6061310 -1.4204161 -1.0571080 1.0371335
## [13] -0.3108146 0.6720928 1.2238064 0.4933809 0.2969010 -1.1825008
## [19] 0.5903955 0.1545816
rnorm(100,20,13)
## [1] 20.1250376 10.4829697 13.4804808 18.1267314 16.7635469 33.0840762
## [7] 15.5527910 36.6199555 20.9505369 11.8725882 19.2539622 19.2961883
## [13] 25.6106989 19.4021595 19.3028295 32.2407599 11.7965437 18.9944191
## [19] 6.2527038 24.9077919 -16.0511676 25.9713406 -0.7871403 27.0009849
## [25] 42.3101191 18.1159042 21.5332180 8.1083513 25.6126142 3.1049655
## [31] 21.0809983 23.8264189 19.8728736 15.1321043 33.0276618 27.3618905
## [37] 19.2635517 28.8554731 4.6601146 28.3777900 24.7610771 29.6318549
## [43] 13.2659226 22.1027129 40.3392278 14.5853768 -12.6536762 28.4516604
## [49] 19.5183584 11.2269243 34.4316037 2.0032360 42.6274812 17.7406310
## [55] 24.4020669 24.1966393 27.1789347 23.0799830 4.6333067 11.0861359
## [61] 26.5568128 4.7045085 16.8754117 14.2472879 32.4394082 19.3891854
## [67] -4.7074629 20.9484188 14.9614407 10.2998628 16.2152431 34.0479897
## [73] -17.0508794 15.5080348 34.9859794 9.8734976 7.3501558 0.4354074
## [79] 22.2231867 18.1068310 13.1887432 15.5955273 25.7558993 23.6250248
## [85] 14.8326685 27.7538107 -0.3005092 31.9574185 33.7960702 30.6588812
## [91] 6.5312934 2.7891544 23.3088132 23.9603858 27.1657795 17.8435385
## [97] 19.4750982 11.1673299 32.0869514 12.9623465
rnorm(100,sd=13,mean=20)
## [1] 2.22916260 31.88541413 10.36239439 26.04382208 16.55104840 12.13783690
## [7] 14.23163979 29.04484802 27.26223813 34.86434629 21.78263472 13.45854125
## [13] 16.38565365 11.43367949 16.55482829 38.30952372 19.32022492 43.45589222
## [19] 6.93031998 36.45250384 -8.29209081 25.69085941 20.66560246 13.59254471
## [25] 14.13559107 13.40836461 33.93752795 28.81067021 22.12589522 29.95699229
## [31] 23.55484921 28.68258955 33.14249897 13.00437237 32.15960815 10.94530062
## [37] 28.15691932 44.95460072 18.12414396 27.53470133 40.57658516 0.65951737
## [43] 20.05562153 4.99146590 22.47440280 50.41408957 22.00342710 17.19418505
## [49] 2.73166246 38.84830332 17.75554475 45.93883103 21.62395891 14.83254447
## [55] 22.78724172 17.33820116 13.64148946 12.56191174 33.82925007 -4.53909506
## [61] 5.26926930 22.55935471 31.87378719 20.07185061 27.64960890 16.12562753
## [67] 3.23193594 26.26461823 26.64301194 20.30146914 20.18194738 9.52542377
## [73] 32.93586785 45.09143207 8.60100174 -7.61390906 17.68867842 32.36935841
## [79] 26.66774825 25.93117467 32.19901583 8.94071402 14.29500672 21.03243940
## [85] 16.11896392 25.36420033 -0.09330365 15.63741136 38.72674705 51.15310661
## [91] 6.20272304 20.94959655 23.73843564 31.31328728 30.17995324 31.40635573
## [97] 29.00358963 17.70574289 -3.96406775 34.77234279
set.seed(123)
n=rnorm(100, 2,0.5)
n
## [1] 1.7197622 1.8849113 2.7793542 2.0352542 2.0646439 2.8575325 2.2304581
## [8] 1.3674694 1.6565736 1.7771690 2.6120409 2.1799069 2.2003857 2.0553414
## [15] 1.7220794 2.8934566 2.2489252 1.0166914 2.3506780 1.7636043 1.4660881
## [22] 1.8910125 1.4869978 1.6355544 1.6874804 1.1566533 2.4188935 2.0766866
## [29] 1.4309315 2.6269075 2.2132321 1.8524643 2.4475628 2.4390667 2.4107905
## [36] 2.3443201 2.2769588 1.9690441 1.8470187 1.8097645 1.6526465 1.8960414
## [43] 1.3673018 3.0844780 2.6039810 1.4384457 1.7985576 1.7666723 2.3899826
## [50] 1.9583155 2.1266593 1.9857266 1.9785648 2.6843011 1.8871145 2.7582353
## [57] 1.2256236 2.2923069 2.0619271 2.1079708 2.1898197 1.7488383 1.8333963
## [64] 1.4907123 1.4641044 2.1517643 2.2241049 2.0265021 2.4611337 3.0250423
## [71] 1.7544844 0.8454156 2.5028693 1.6453996 1.6559957 2.5127857 1.8576135
## [78] 1.3896411 2.0906517 1.9305543 2.0028821 2.1926402 1.8146700 2.3221883
## [85] 1.8897567 2.1658910 2.5484195 2.2175907 1.8370342 2.5744038 2.4967519
## [92] 2.2741985 2.1193659 1.6860470 2.6803262 1.6998702 3.0936665 2.7663053
## [99] 1.8821498 1.4867895
j=runif(100)
j
## [1] 0.238726027 0.962358936 0.601365726 0.515029727 0.402573342 0.880246541
## [7] 0.364091865 0.288239281 0.170645235 0.172171746 0.482042606 0.252964929
## [13] 0.216254790 0.674376388 0.047663627 0.700853087 0.351888638 0.408943998
## [19] 0.820951324 0.918857348 0.282528330 0.961104794 0.728394428 0.686375082
## [25] 0.052843943 0.395220135 0.477845380 0.560253264 0.698261595 0.915683538
## [31] 0.618351227 0.428421509 0.542080367 0.058478489 0.260856857 0.397151953
## [37] 0.197744737 0.831927563 0.152887223 0.803418542 0.546826157 0.662317642
## [43] 0.171698494 0.633055360 0.311869747 0.724554346 0.398939825 0.969356411
## [49] 0.967398371 0.726702539 0.257216746 0.221787935 0.593045652 0.267521432
## [55] 0.531070399 0.785291671 0.168060811 0.404399181 0.471576278 0.868106807
## [61] 0.925707956 0.881977559 0.674186843 0.950166979 0.516444894 0.576519021
## [67] 0.336331206 0.347324631 0.020024301 0.502813046 0.871043414 0.006300784
## [73] 0.072057124 0.164211225 0.770334074 0.735184306 0.971875636 0.466472377
## [79] 0.074384513 0.648818124 0.758593170 0.137106081 0.396584595 0.224985329
## [85] 0.057958561 0.395892688 0.064928300 0.225886433 0.054629109 0.670282040
## [91] 0.297741783 0.100721582 0.071904097 0.880440569 0.754247402 0.816605888
## [97] 0.982140374 0.103599645 0.099041829 0.798831611
s=rt(100,df=3)
s
## [1] 0.69683236 0.82060066 -0.02475866 -0.30644712 -0.30056295 -3.47363186
## [7] -1.31714799 -0.46532917 -0.01932117 5.99328177 -0.02021276 -2.00872529
## [13] -0.57321111 -0.16850664 -1.41785209 -1.20204135 -0.52541258 1.23078376
## [19] 0.63466850 2.34977229 1.88108475 -2.20687007 6.41947266 -0.25537575
## [25] -0.66606686 -0.01114930 -0.06244739 0.18466027 -1.25469184 0.08335478
## [31] 0.35642587 -0.53703200 1.00405279 -0.43246746 -1.34543674 1.92487880
## [37] -0.09990203 -1.26894058 0.83961497 -0.15032212 -0.83106377 0.01523773
## [43] 1.00633019 -0.12547272 -1.77088587 -3.22061623 -0.07322264 -0.50701695
## [49] -0.50295934 0.07520585 0.18176418 -0.85664567 0.67830426 1.78504381
## [55] -0.24748408 0.93705785 1.97205423 0.21457114 0.36545186 1.70894197
## [61] -0.34914733 0.93052910 4.51244483 -1.46438907 1.56468817 0.49041375
## [67] 1.11727468 0.43312514 0.29718297 -2.04567260 -1.36525725 -0.66750687
## [73] -0.49447123 -0.93744377 0.51235989 -8.61233265 0.70151938 0.89078422
## [79] -0.21608493 -0.81058160 -0.25568636 -2.63293864 -1.00076993 -3.08952378
## [85] -0.01260136 -0.20001064 0.93324733 -0.06879633 2.80205973 -0.95441015
## [91] -0.78877949 0.42289498 0.75830163 0.53165633 0.85237062 0.55751630
## [97] 0.65719967 1.41166493 0.32995741 2.43177705
c=rchisq(100,3)
c
## [1] 3.3850922 3.2984545 1.6909650 0.1576374 6.6977146 0.4255763 2.1398074
## [8] 3.0006399 3.1373579 2.7302180 5.8218036 0.4584186 1.6201983 0.7657052
## [15] 2.9739183 4.1567176 5.0755977 1.1720594 1.3637716 3.0758988 2.2844511
## [22] 3.8891418 0.6878708 6.9350646 2.1324304 4.8828211 7.9019783 1.4766519
## [29] 0.5130345 1.5948243 1.9896741 2.0411105 2.6774314 5.5385065 2.2499958
## [36] 3.6797567 3.8610315 4.2479516 1.0161754 5.9954669 2.3432680 2.7945191
## [43] 3.2567545 0.9773518 4.6550916 1.8906219 9.3182640 2.7903987 1.0009019
## [50] 2.4556660 4.1543027 2.4323302 0.9571249 2.2230586 0.3827861 0.4611069
## [57] 1.7458361 1.7893021 3.1419871 0.1678722 0.4058235 3.9225606 5.0094145
## [64] 2.7821002 0.9680566 1.3273275 1.1724402 0.9700765 4.1080274 4.1016847
## [71] 0.3211031 3.6369040 2.6853121 0.6705557 0.7415162 2.1502738 6.2488106
## [78] 2.9134959 4.3211165 1.4858849 1.6249270 2.3603811 0.6411606 0.4162545
## [85] 2.3591057 2.3395796 4.2461522 2.3558489 3.5971023 1.0379425 4.3845427
## [92] 5.5239566 0.4184004 3.5731431 2.1469375 0.1211514 0.7123071 1.8005444
## [99] 1.9840761 2.8355945
f=rf(100,df1=4,df2=5)
f
## [1] 0.52610805 1.74521305 1.02604707 3.25032204 1.52430340 0.28097148
## [7] 0.38109784 0.55076467 0.69027447 0.48196860 4.41313923 0.73094071
## [13] 0.37996535 2.06320618 0.84712631 0.61603119 0.71032146 0.62933857
## [19] 2.82465565 0.41869146 2.67819390 1.77195322 0.53829047 1.08785238
## [25] 1.95254581 1.14638625 0.27337680 0.58384781 0.33364606 0.77739386
## [31] 0.48367768 1.58395506 0.85833052 0.08154664 0.28514547 0.84480764
## [37] 2.62597743 1.21076087 2.08760690 1.89972530 1.17307090 0.21546587
## [43] 1.24627808 1.35692310 17.71356434 0.20513635 1.58029619 2.90312814
## [49] 0.07009730 1.31514070 0.00564881 3.51205181 2.68952096 1.18568879
## [55] 1.58932593 2.01802763 1.59471709 0.75218091 0.59938150 1.70882973
## [61] 1.77348471 0.28766346 0.17464260 1.10959418 0.83223825 4.74271587
## [67] 3.58385752 0.09552937 1.26651119 0.28091568 0.48236156 12.00955112
## [73] 0.69463279 0.71923276 1.15728964 1.90554090 5.86638409 0.44790960
## [79] 0.09469444 2.63703334 0.09821284 0.21453281 0.17428717 3.00294331
## [85] 0.38385209 3.40359044 0.66721172 0.69316870 1.09003637 0.85520126
## [91] 3.29537360 0.66066119 0.27395316 0.10956574 0.26362624 0.53813684
## [97] 0.24114574 0.05285393 0.37716631 0.73218773
dnorm(0)
## [1] 0.3989423
dnorm(0,mean=3,sd=1)
## [1] 0.004431848
dnorm(seq(-3,3,0.05))
## [1] 0.004431848 0.005142641 0.005952532 0.006872767 0.007915452 0.009093563
## [7] 0.010420935 0.011912244 0.013582969 0.015449347 0.017528300 0.019837354
## [13] 0.022394530 0.025218220 0.028327038 0.031739652 0.035474593 0.039550042
## [19] 0.043983596 0.048792019 0.053990967 0.059594706 0.065615815 0.072064874
## [25] 0.078950158 0.086277319 0.094049077 0.102264925 0.110920835 0.120009001
## [31] 0.129517596 0.139430566 0.149727466 0.160383327 0.171368592 0.182649085
## [37] 0.194186055 0.205936269 0.217852177 0.229882141 0.241970725 0.254059056
## [43] 0.266085250 0.277984886 0.289691553 0.301137432 0.312253933 0.322972360
## [49] 0.333224603 0.342943855 0.352065327 0.360526962 0.368270140 0.375240347
## [55] 0.381387815 0.386668117 0.391042694 0.394479331 0.396952547 0.398443914
## [61] 0.398942280 0.398443914 0.396952547 0.394479331 0.391042694 0.386668117
## [67] 0.381387815 0.375240347 0.368270140 0.360526962 0.352065327 0.342943855
## [73] 0.333224603 0.322972360 0.312253933 0.301137432 0.289691553 0.277984886
## [79] 0.266085250 0.254059056 0.241970725 0.229882141 0.217852177 0.205936269
## [85] 0.194186055 0.182649085 0.171368592 0.160383327 0.149727466 0.139430566
## [91] 0.129517596 0.120009001 0.110920835 0.102264925 0.094049077 0.086277319
## [97] 0.078950158 0.072064874 0.065615815 0.059594706 0.053990967 0.048792019
## [103] 0.043983596 0.039550042 0.035474593 0.031739652 0.028327038 0.025218220
## [109] 0.022394530 0.019837354 0.017528300 0.015449347 0.013582969 0.011912244
## [115] 0.010420935 0.009093563 0.007915452 0.006872767 0.005952532 0.005142641
## [121] 0.004431848
x<-rnorm(100,3,1)
hist(x,prob=T)
lx=seq(-3,9,length=120)
lx
## [1] -3.00000000 -2.89915966 -2.79831933 -2.69747899 -2.59663866 -2.49579832
## [7] -2.39495798 -2.29411765 -2.19327731 -2.09243697 -1.99159664 -1.89075630
## [13] -1.78991597 -1.68907563 -1.58823529 -1.48739496 -1.38655462 -1.28571429
## [19] -1.18487395 -1.08403361 -0.98319328 -0.88235294 -0.78151261 -0.68067227
## [25] -0.57983193 -0.47899160 -0.37815126 -0.27731092 -0.17647059 -0.07563025
## [31] 0.02521008 0.12605042 0.22689076 0.32773109 0.42857143 0.52941176
## [37] 0.63025210 0.73109244 0.83193277 0.93277311 1.03361345 1.13445378
## [43] 1.23529412 1.33613445 1.43697479 1.53781513 1.63865546 1.73949580
## [49] 1.84033613 1.94117647 2.04201681 2.14285714 2.24369748 2.34453782
## [55] 2.44537815 2.54621849 2.64705882 2.74789916 2.84873950 2.94957983
## [61] 3.05042017 3.15126050 3.25210084 3.35294118 3.45378151 3.55462185
## [67] 3.65546218 3.75630252 3.85714286 3.95798319 4.05882353 4.15966387
## [73] 4.26050420 4.36134454 4.46218487 4.56302521 4.66386555 4.76470588
## [79] 4.86554622 4.96638655 5.06722689 5.16806723 5.26890756 5.36974790
## [85] 5.47058824 5.57142857 5.67226891 5.77310924 5.87394958 5.97478992
## [91] 6.07563025 6.17647059 6.27731092 6.37815126 6.47899160 6.57983193
## [97] 6.68067227 6.78151261 6.88235294 6.98319328 7.08403361 7.18487395
## [103] 7.28571429 7.38655462 7.48739496 7.58823529 7.68907563 7.78991597
## [109] 7.89075630 7.99159664 8.09243697 8.19327731 8.29411765 8.39495798
## [115] 8.49579832 8.59663866 8.69747899 8.79831933 8.89915966 9.00000000
lines(lx,dnorm(lx,3,1),col='red')
qnorm(0.5)
## [1] 0
qnorm(0.75,2,0.23)
## [1] 2.155133
qnorm(0.95,1,2)
## [1] 4.289707
pnorm(0.5)
## [1] 0.6914625
z=seq(-5,5,length=120)
z
## [1] -5.00000000 -4.91596639 -4.83193277 -4.74789916 -4.66386555 -4.57983193
## [7] -4.49579832 -4.41176471 -4.32773109 -4.24369748 -4.15966387 -4.07563025
## [13] -3.99159664 -3.90756303 -3.82352941 -3.73949580 -3.65546218 -3.57142857
## [19] -3.48739496 -3.40336134 -3.31932773 -3.23529412 -3.15126050 -3.06722689
## [25] -2.98319328 -2.89915966 -2.81512605 -2.73109244 -2.64705882 -2.56302521
## [31] -2.47899160 -2.39495798 -2.31092437 -2.22689076 -2.14285714 -2.05882353
## [37] -1.97478992 -1.89075630 -1.80672269 -1.72268908 -1.63865546 -1.55462185
## [43] -1.47058824 -1.38655462 -1.30252101 -1.21848739 -1.13445378 -1.05042017
## [49] -0.96638655 -0.88235294 -0.79831933 -0.71428571 -0.63025210 -0.54621849
## [55] -0.46218487 -0.37815126 -0.29411765 -0.21008403 -0.12605042 -0.04201681
## [61] 0.04201681 0.12605042 0.21008403 0.29411765 0.37815126 0.46218487
## [67] 0.54621849 0.63025210 0.71428571 0.79831933 0.88235294 0.96638655
## [73] 1.05042017 1.13445378 1.21848739 1.30252101 1.38655462 1.47058824
## [79] 1.55462185 1.63865546 1.72268908 1.80672269 1.89075630 1.97478992
## [85] 2.05882353 2.14285714 2.22689076 2.31092437 2.39495798 2.47899160
## [91] 2.56302521 2.64705882 2.73109244 2.81512605 2.89915966 2.98319328
## [97] 3.06722689 3.15126050 3.23529412 3.31932773 3.40336134 3.48739496
## [103] 3.57142857 3.65546218 3.73949580 3.82352941 3.90756303 3.99159664
## [109] 4.07563025 4.15966387 4.24369748 4.32773109 4.41176471 4.49579832
## [115] 4.57983193 4.66386555 4.74789916 4.83193277 4.91596639 5.00000000
plot(z,dnorm(z),type="l")
lines(z,dnorm(z,0,3),type="l",lty="dotted")
lines(z,dnorm(z,0,0.5),type="l",lty="dashed")
# Ostatnia linia wychodzi poza obszar wykresu, ponieważ te linie dorysowywane są do wykresu,
# czyli nie zmieniają jego rozmiaru.
# Wykres uzyskany za pomocą funkcji plot() determinuje rozmiar wykresu na stałe.
z=seq(-10,10,length=120)
plot(z,dnorm(z,0,1),type="l")
lines(z,dnorm(z,2,1),type="l",lty="dotted")
lines(z,dnorm(z,0,2),type="l",lty="dashed")
plot(z,dnorm(z),type="l")
lines(z,dnorm(z,0,3),type="l",lty="dotted")
legend("topright",inset =0.01,lty=c("solid","dotted"),
c(expression(N(mu==0,sigma==1)),expression(N(mu==0,sigma==3))) )
# Możliwe umiejscowienia legendy:
# "bottomright"
# "bottom"
# "bottomleft"
# "left"
# "topleft"
# "top"
# "topright"
# "right"
# "center"
# Wygeneruj 100 wartości z rozkładu normalnego o średniej równej -3 i odchyleniu standardowym równym 1.
# Wygeneruj 100 wartości z rozkładu t-Studenta o 8 stopniach swobody.
# Wygeneruj 100 wartości z rozkładu Chikwadrat o 2 stopniach swobody.
# Przedstaw histogramy dla wygenerowanych wartości na 1 wykresie jeden obok drugiego.
x=rnorm(100,-3,1)
y=rt(100,8)
z=rchisq(100,2)
par(mfrow=c(1,3))
hist(x)
hist(y)
hist(z)
#install.packages("lattice")
library(lattice)
# Wykorzystany zostanie zbiór danych, który dostępny jest w R pod nazwą: airquality.
aq_data=airquality
# Przekształcenie zbioru danych poprzez zamianę kolumny Month na typu factor.
aq_data$Month=factor(aq_data$Month,
levels=c(5,6,7,8,9),
labels=c("maj","czerwiec","lipiec","sierpień","wrzesień"))
head(aq_data)
## Ozone Solar.R Wind Temp Month Day
## 1 41 190 7.4 67 maj 1
## 2 36 118 8.0 72 maj 2
## 3 12 149 12.6 74 maj 3
## 4 18 313 11.5 62 maj 4
## 5 NA NA 14.3 56 maj 5
## 6 28 NA 14.9 66 maj 6
# Jądrowy estymator gęstości zmiennej Temp (maksymalna temperatura).
densityplot(~Temp,data=aq_data)
# Jądrowy estymator gęstości zmiennej Temp osobno dla każdego z miesięcy.
densityplot(~Temp|Month, data=aq_data)
# Funkcja layout pozwala na zmianę ustawienia poszczególnych małych wykresów na wykresie ogólnym.
densityplot(~Temp|Month,
data=aq_data,
layout=c(5,1))
# Dodanie do wykresu: opisu osi OX i tytułu wykresu (w tym zapisania go w dwóch liniach zamiast jednej).
densityplot(~Temp|Month,
data=aq_data,
layout=c(5,1),
xlab="maksymalna odnotowana temperatura",
main="Estymacja gęstości rozkładu \nmaksymalnych temperatur w wybranych miesiącach")
# Zestawienie średniego poziomu ozonu i przeciętnej prędkości wiatru w milach na godzinę.
xyplot(Ozone~Wind,data=aq_data)
# Osobne wykresy dla każdego z miesięcy.
xyplot(Ozone~Wind|Month,data=aq_data,layout=c(5,1))
# Wyselekcjonowanie danych dla miesięcy letnich (czerwiec-sierpień).
aq_data_new=aq_data[aq_data[,"Month"]=="czerwiec"|aq_data[,"Month"]=="lipiec"|aq_data[,"Month"]=="sierpień",]
aq_data_new$Month=factor(aq_data_new$Month,levels = c("czerwiec","lipiec","sierpień"),labels=c("czerwiec","lipiec","sierpień"))
# Wyróżnienie danych z poszczególnych miesięcy innym kolorem.
xyplot(Ozone~Wind,group=Month,data=aq_data_new,pch=19,col=c(2,3,4))
# Dodanie legendy.
xyplot(Ozone~Wind,group=Month,col=c(2,3,4),data=aq_data_new,
pch=19,key=list(space="right",
text = list(as.character(unique(aq_data_new$Month))),
points = list(pch = 19, col =2:4)))
splom(aq_data[,c("Ozone","Wind","Temp")])
# Wykres pudełkowy przedstawiający poziom ozonu w wybranych miesiącach roku.
# Dodanie opisów osi oraz zmniejszenie czcionki na osiach wykresu.
bwplot(Ozone~Month,data=aq_data,
xlab="Miesiące",
ylab="Poziom Ozonu",
scales = list(cex=0.7))
# Dodanie koloru.
bwplot(Ozone~Month,data=aq_data,
xlab="Miesiące",
ylab="Poziom Ozonu",
scales = list(cex=0.7),fill=rainbow(5))
# Wykorzystany zostanie wbudowany do R zbiór danycho nazwie: ChickWeight.
# Wykres zliczający ile pisklęć jest poddanych danej diecie.
barchart(ChickWeight$Diet,horizontal=F)
# Wykorzystany zostanie wbudowany do R zbiór danych o nazwie: ChickWeight.
histogram(~weight,data=ChickWeight,
type="count",
xlab="Waga",
main="Waga piskląt",
col="pink")
#Wykorzystywany zbiór danych:
head(mtcars)
## mpg cyl disp hp drat wt qsec vs am gear carb
## Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
## Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
## Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
## Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
## Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
## Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
?lm
model1<-lm(mpg~wt,data=mtcars)
#Podstawowe informacje.
model1
##
## Call:
## lm(formula = mpg ~ wt, data = mtcars)
##
## Coefficients:
## (Intercept) wt
## 37.285 -5.344
#Rozszerzony widok informacji o modelu.
summary(model1)
##
## Call:
## lm(formula = mpg ~ wt, data = mtcars)
##
## Residuals:
## Min 1Q Median 3Q Max
## -4.5432 -2.3647 -0.1252 1.4096 6.8727
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 37.2851 1.8776 19.858 < 2e-16 ***
## wt -5.3445 0.5591 -9.559 1.29e-10 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3.046 on 30 degrees of freedom
## Multiple R-squared: 0.7528, Adjusted R-squared: 0.7446
## F-statistic: 91.38 on 1 and 30 DF, p-value: 1.294e-10
model1$coefficients
## (Intercept) wt
## 37.285126 -5.344472
summary(model1)$coefficients
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 37.285126 1.877627 19.857575 8.241799e-19
## wt -5.344472 0.559101 -9.559044 1.293959e-10
summary(model1)$coefficients[2,1]
## [1] -5.344472
summary(model1)$coef[2,1]
## [1] -5.344472
summary(model1)$coefficients[1,1]
## [1] 37.28513
summary(model1)$r.squared
## [1] 0.7528328
model1$residuals
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## -2.2826106 -0.9197704 -2.0859521 1.2973499
## Hornet Sportabout Valiant Duster 360 Merc 240D
## -0.2001440 -0.6932545 -3.9053627 4.1637381
## Merc 230 Merc 280 Merc 280C Merc 450SE
## 2.3499593 0.2998560 -1.1001440 0.8668731
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## -0.0502472 -1.8830236 1.1733496 2.1032876
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## 5.9810744 6.8727113 1.7461954 6.4219792
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## -2.6110037 -2.9725862 -3.7268663 -3.4623553
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## 2.4643670 0.3564263 0.1520430 1.2010593
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## -4.5431513 -2.7809399 -3.2053627 -1.0274952
summary(model1)$residuals
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## -2.2826106 -0.9197704 -2.0859521 1.2973499
## Hornet Sportabout Valiant Duster 360 Merc 240D
## -0.2001440 -0.6932545 -3.9053627 4.1637381
## Merc 230 Merc 280 Merc 280C Merc 450SE
## 2.3499593 0.2998560 -1.1001440 0.8668731
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## -0.0502472 -1.8830236 1.1733496 2.1032876
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## 5.9810744 6.8727113 1.7461954 6.4219792
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## -2.6110037 -2.9725862 -3.7268663 -3.4623553
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## 2.4643670 0.3564263 0.1520430 1.2010593
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## -4.5431513 -2.7809399 -3.2053627 -1.0274952
model1$fitted.values
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## 23.282611 21.919770 24.885952 20.102650
## Hornet Sportabout Valiant Duster 360 Merc 240D
## 18.900144 18.793255 18.205363 20.236262
## Merc 230 Merc 280 Merc 280C Merc 450SE
## 20.450041 18.900144 18.900144 15.533127
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## 17.350247 17.083024 9.226650 8.296712
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## 8.718926 25.527289 28.653805 27.478021
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## 24.111004 18.472586 18.926866 16.762355
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## 16.735633 26.943574 25.847957 29.198941
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## 20.343151 22.480940 18.205363 22.427495
# Uwaga! Funkcja poniżej nie zwróci wyników.
# summary(model1)$fitted.values
plot(mtcars$mpg,mtcars$wt)
model2<-lm(mpg~wt+qsec,data=mtcars)
model2
##
## Call:
## lm(formula = mpg ~ wt + qsec, data = mtcars)
##
## Coefficients:
## (Intercept) wt qsec
## 19.7462 -5.0480 0.9292
summary(model2)
##
## Call:
## lm(formula = mpg ~ wt + qsec, data = mtcars)
##
## Residuals:
## Min 1Q Median 3Q Max
## -4.3962 -2.1431 -0.2129 1.4915 5.7486
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 19.7462 5.2521 3.760 0.000765 ***
## wt -5.0480 0.4840 -10.430 2.52e-11 ***
## qsec 0.9292 0.2650 3.506 0.001500 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.596 on 29 degrees of freedom
## Multiple R-squared: 0.8264, Adjusted R-squared: 0.8144
## F-statistic: 69.03 on 2 and 29 DF, p-value: 9.395e-12
# Zbadano jak dużo studenci UE wydali w listopadzie 2022 roku na pieczywo.
# Do badania wylosowano próbę składającą się z 16 osób.
# Na poziomie istotności alfa=0,05 zweryfikować hipotezę,
# że rzeczywista średnia kwota wydatków studentów UE w listopadzie 2022 na pieczywo była:
# a) równa 40zł,
# b) mniejsza niż 40 zł,
# c) większa niż 40 zł.
#Wprowadzenie danych.
wydatki=c(70,32,100,65,34,47,23,80,47,65,34,63,72,33,63,38)
# Ad a)
# H0: mi=40
# H1: mi=/=40
# 2-stronny obszar krytyczny.
wsr=mean(wydatki)
mi0=40
n=length(wydatki)
s=sd(wydatki)
T=(wsr-mi0)/s*sqrt(n)
T
## [1] 2.650558
alpha=0.05
# Wyznaczenie obszaru krytycznego
t.alpha.l=qt(alpha/2,n-1,lower.tail = T)
t.alpha.p=qt(alpha/2,n-1,lower.tail = F)
# Obszar, w którym jeżeli znajdzie się wartość statystyki testowej, to nie ma podstaw do odrzucenia H0.
c(t.alpha.l,t.alpha.p)
## [1] -2.13145 2.13145
# Wartość statystyki testowej należy do obszaru krytycznego.
# Odrzucamy H0 na rzecz H1.
# Można twierdzić, że rzeczywista średnia kwota wydatków na pieczywo studentów UE
# w listopadzie 2022 była różna od 40 zł.
# Testowanie za pomocą wbudowanej funkcji.
t.test(wydatki,mu=40)
##
## One Sample t-test
##
## data: wydatki
## t = 2.6506, df = 15, p-value = 0.01817
## alternative hypothesis: true mean is not equal to 40
## 95 percent confidence interval:
## 42.76636 65.48364
## sample estimates:
## mean of x
## 54.125
# p-wartość jest mniejsza od poziomu istotności alfa.
# Odrzucamy H0 na rzecz H1.
# Można twierdzić, że rzeczywista średnia kwota wydatków na pieczywo studentów UE
# w listopadzie 2022 była różna od 40 zł.
#"Ręczne wyznaczenie p-wartości"
1-pt(T,n-1)+pt(-T,n-1)
## [1] 0.0181711
# Ad b)
# H0: mi=40
# H1: mi>40
t.test(wydatki,mu=40,alternative = "g")
##
## One Sample t-test
##
## data: wydatki
## t = 2.6506, df = 15, p-value = 0.009086
## alternative hypothesis: true mean is greater than 40
## 95 percent confidence interval:
## 44.78288 Inf
## sample estimates:
## mean of x
## 54.125
# p-wartość jest mniejsza od alfa=0.05.
# Odrzucamy H0 na rzecz H1.
# Można twierdzić, że średnia kwota wydatków na pieczywo studentów na UE w listopadzie 2022 była większa od 40 zł.
# Ad c)
# H0: mi=40
# H1: mi<40
t.test(wydatki,mu=40,alternative = "l")
##
## One Sample t-test
##
## data: wydatki
## t = 2.6506, df = 15, p-value = 0.9909
## alternative hypothesis: true mean is less than 40
## 95 percent confidence interval:
## -Inf 63.46712
## sample estimates:
## mean of x
## 54.125
# Nie ma podstaw do odrzucenia H0.
# H0: zmienna wydatki ma rozkład normalny
# H1: zmienna wydatki nie ma rozkładu normalnego
shapiro.test(wydatki)
##
## Shapiro-Wilk normality test
##
## data: wydatki
## W = 0.93908, p-value = 0.3378
# Brak podstaw do odrzucenia H0 (hipotezy zerowej, głoszącej że zmienna wydatki ma rozkład normalny).
# Wyświetlenie p-wartości.
shapiro.test(wydatki)$p.value
## [1] 0.3378433
# install.packages("foreign")
library(foreign)
# Import danych zapisanych w pliku programu SPSS ze strony stat.ue.katowice.pl
wzrost<-read.spss("http://stat.ue.katowice.pl/dane1/heights.sav")
wzrost
## $Husband
## [1] 186 180 160 186 163 172 192 170 174 191 182 178 181 168 162 188 168 183 188
## [20] 166 180 176 185 169 182 162 169 176 180 157 170 186 180 188 153 179 175 165
## [39] 156 185 172 166 179 181 176 170 165 183 162 192 185 163 185 170 176 176 160
## [58] 167 157 180 172 184 185 165 181 170 161 188 181 156 161 152 179 170 170 165
## [77] 165 169 171 192 176 168 169 184 171 161 185 184 179 184 175 173 164 181 187
## [96] 181 NA
##
## $Wife
## [1] 175 168 154 166 162 152 179 163 172 170 170 147 165 162 154 166 167 174 173
## [20] 164 163 163 171 161 167 160 165 167 175 157 172 181 166 181 148 169 170 157
## [39] 162 174 168 162 159 155 171 159 164 175 156 180 167 157 167 157 168 167 145
## [58] 156 153 162 156 174 160 152 175 169 149 176 165 143 158 141 160 149 160 148
## [77] 154 171 165 175 161 162 162 176 160 158 175 174 168 177 158 161 146 168 178
## [96] 170 NA
##
## attr(,"label.table")
## attr(,"label.table")$Husband
## NULL
##
## attr(,"label.table")$Wife
## NULL
##
## attr(,"codepage")
## [1] 65001
class(wzrost)
## [1] "list"
attach(wzrost)
# Badano wzrost kobiet(żon) i mężczyzn(mężów).
# Należy zweryfikować hipotezę, że przeciętny wzrost mężów jest wyższy
# niż przeciętny wzrost w grupie żon. Przyjąć poziom istotności 0,05.
# H0: mi_M=mi_K
# H1: mi_M>mi_K
t.test(Husband,Wife,alternative = "g")
##
## Welch Two Sample t-test
##
## data: Husband and Wife
## t = 7.5616, df = 188.57, p-value = 8.467e-13
## alternative hypothesis: true difference in means is greater than 0
## 95 percent confidence interval:
## 8.147699 Inf
## sample estimates:
## mean of x mean of y
## 174.3229 163.8958
# p-wartość jest mniejsza od założonego poziomu istotności alfa = 0.05.
# Odrzucamy H0 na rzecz H1.
# Można twierdzić, że średni wzrost mężów jest większy niż średni wzrost żon.
# U kilku pacjentów badano rozkurczowe ciśnienie. Prawidłowe normy to: 80-84.
# Badane osoby mają wysokie ciśnienie i zgłosili się do badań nad nowym lekiem.
# Zmienna przed: ciśnienie rozkurczowe przed zażyciem leku.
# Zmienna po: ciśnienie rozkurczowe po tygodniowym zażywaniu leku.
# Na poziomie istotności alfa=0,05 zweryfikować hipotezę, że lek powoduje spadek ciśnienia.
przed <-c(85,90,86,92,88,86,91,89)
po <-c(86,86,88,82,88,82,84,85)
t.test(po,przed,paired = T,alternative="l")
##
## Paired t-test
##
## data: po and przed
## t = -2.2437, df = 7, p-value = 0.02988
## alternative hypothesis: true mean difference is less than 0
## 95 percent confidence interval:
## -Inf -0.5056623
## sample estimates:
## mean difference
## -3.25
# Odrzucamy hipotezę zerową na rzecz hipotezy alternatywnej.
# Można twierdzić, że średnia wysokość ciśnienia rozkurczowego
# po tygodniowym stosowaniu leku była mniejsza niż przed stosowaniem leku.
# Inny zapis danych wejściowych.
badanie<- data.frame(
grupa = rep(c("przed", "po"), each = 8),
cisnienie = c(przed, po))
badanie
## grupa cisnienie
## 1 przed 85
## 2 przed 90
## 3 przed 86
## 4 przed 92
## 5 przed 88
## 6 przed 86
## 7 przed 91
## 8 przed 89
## 9 po 86
## 10 po 86
## 11 po 88
## 12 po 82
## 13 po 88
## 14 po 82
## 15 po 84
## 16 po 85
attach(badanie)
# Mając tak wyglądający zbiór danych, testowanie można przeprowadzić za pomocą kodu:
t.test(cisnienie~grupa,paired=T,alternative="l")
##
## Paired t-test
##
## data: cisnienie by grupa
## t = -2.2437, df = 7, p-value = 0.02988
## alternative hypothesis: true mean difference is less than 0
## 95 percent confidence interval:
## -Inf -0.5056623
## sample estimates:
## mean difference
## -3.25
# H0: sigma_K^2=sigma_M^2
# H1: sigma_K^2>sigma_M^2
var.test(Wife,Husband,alternative="g")
##
## F test to compare two variances
##
## data: Wife and Husband
## F = 0.84, num df = 95, denom df = 95, p-value = 0.8015
## alternative hypothesis: true ratio of variances is greater than 1
## 95 percent confidence interval:
## 0.5983559 Inf
## sample estimates:
## ratio of variances
## 0.8399965
# Nie ma podstaw do odrzucenia H0 (hipotezy zerowej mówiącej o równości wariancji).
# Wprowadzenie danych.
muzyka <- matrix(c(67, 57, 68,34, 59, 77),ncol=3,byrow=T)
dimnames(muzyka) <- list(c("K", "M"),c("Pop","R$B", "Rock"))
muzyka
## Pop R$B Rock
## K 67 57 68
## M 34 59 77
# H0: zmienne są niezależne (płeć i rodzaj preferowanej muzyki są niezależne)
# H1: zmienne są zależne
chisq.test(muzyka)
##
## Pearson's Chi-squared test
##
## data: muzyka
## X-squared = 10.075, df = 2, p-value = 0.006488
# p-wartość jest mniejsza od poziomu istotności alfa.
# Odrzucamy H0 na rzecz H1.
# Można twierdzić, że istnieje zależność między płcią i preferowanym stylem muzycznym.
# UWAGA! Należy pamiętać, że przy stosowaniu tego testu ważne jest założenie dot. liczebności oczekiwanych.
#install.packages("dplyr")
library(dplyr)
##
## Dołączanie pakietu: 'dplyr'
## Następujące obiekty zostały zakryte z 'package:stats':
##
## filter, lag
## Następujące obiekty zostały zakryte z 'package:base':
##
## intersect, setdiff, setequal, union
head(iris)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3.0 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5.0 3.6 1.4 0.2 setosa
## 6 5.4 3.9 1.7 0.4 setosa
str(iris)
## 'data.frame': 150 obs. of 5 variables:
## $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
## $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
## $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
## $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
## $ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
glimpse(iris)
## Rows: 150
## Columns: 5
## $ Sepal.Length <dbl> 5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.…
## $ Sepal.Width <dbl> 3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.…
## $ Petal.Length <dbl> 1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.…
## $ Petal.Width <dbl> 0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.…
## $ Species <fct> setosa, setosa, setosa, setosa, setosa, setosa, setosa, s…
arrange(iris,Sepal.Length)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 4.3 3.0 1.1 0.1 setosa
## 2 4.4 2.9 1.4 0.2 setosa
## 3 4.4 3.0 1.3 0.2 setosa
## 4 4.4 3.2 1.3 0.2 setosa
## 5 4.5 2.3 1.3 0.3 setosa
## 6 4.6 3.1 1.5 0.2 setosa
## 7 4.6 3.4 1.4 0.3 setosa
## 8 4.6 3.6 1.0 0.2 setosa
## 9 4.6 3.2 1.4 0.2 setosa
## 10 4.7 3.2 1.3 0.2 setosa
## 11 4.7 3.2 1.6 0.2 setosa
## 12 4.8 3.4 1.6 0.2 setosa
## 13 4.8 3.0 1.4 0.1 setosa
## 14 4.8 3.4 1.9 0.2 setosa
## 15 4.8 3.1 1.6 0.2 setosa
## 16 4.8 3.0 1.4 0.3 setosa
## 17 4.9 3.0 1.4 0.2 setosa
## 18 4.9 3.1 1.5 0.1 setosa
## 19 4.9 3.1 1.5 0.2 setosa
## 20 4.9 3.6 1.4 0.1 setosa
## 21 4.9 2.4 3.3 1.0 versicolor
## 22 4.9 2.5 4.5 1.7 virginica
## 23 5.0 3.6 1.4 0.2 setosa
## 24 5.0 3.4 1.5 0.2 setosa
## 25 5.0 3.0 1.6 0.2 setosa
## 26 5.0 3.4 1.6 0.4 setosa
## 27 5.0 3.2 1.2 0.2 setosa
## 28 5.0 3.5 1.3 0.3 setosa
## 29 5.0 3.5 1.6 0.6 setosa
## 30 5.0 3.3 1.4 0.2 setosa
## 31 5.0 2.0 3.5 1.0 versicolor
## 32 5.0 2.3 3.3 1.0 versicolor
## 33 5.1 3.5 1.4 0.2 setosa
## 34 5.1 3.5 1.4 0.3 setosa
## 35 5.1 3.8 1.5 0.3 setosa
## 36 5.1 3.7 1.5 0.4 setosa
## 37 5.1 3.3 1.7 0.5 setosa
## 38 5.1 3.4 1.5 0.2 setosa
## 39 5.1 3.8 1.9 0.4 setosa
## 40 5.1 3.8 1.6 0.2 setosa
## 41 5.1 2.5 3.0 1.1 versicolor
## 42 5.2 3.5 1.5 0.2 setosa
## 43 5.2 3.4 1.4 0.2 setosa
## 44 5.2 4.1 1.5 0.1 setosa
## 45 5.2 2.7 3.9 1.4 versicolor
## 46 5.3 3.7 1.5 0.2 setosa
## 47 5.4 3.9 1.7 0.4 setosa
## 48 5.4 3.7 1.5 0.2 setosa
## 49 5.4 3.9 1.3 0.4 setosa
## 50 5.4 3.4 1.7 0.2 setosa
## 51 5.4 3.4 1.5 0.4 setosa
## 52 5.4 3.0 4.5 1.5 versicolor
## 53 5.5 4.2 1.4 0.2 setosa
## 54 5.5 3.5 1.3 0.2 setosa
## 55 5.5 2.3 4.0 1.3 versicolor
## 56 5.5 2.4 3.8 1.1 versicolor
## 57 5.5 2.4 3.7 1.0 versicolor
## 58 5.5 2.5 4.0 1.3 versicolor
## 59 5.5 2.6 4.4 1.2 versicolor
## 60 5.6 2.9 3.6 1.3 versicolor
## 61 5.6 3.0 4.5 1.5 versicolor
## 62 5.6 2.5 3.9 1.1 versicolor
## 63 5.6 3.0 4.1 1.3 versicolor
## 64 5.6 2.7 4.2 1.3 versicolor
## 65 5.6 2.8 4.9 2.0 virginica
## 66 5.7 4.4 1.5 0.4 setosa
## 67 5.7 3.8 1.7 0.3 setosa
## 68 5.7 2.8 4.5 1.3 versicolor
## 69 5.7 2.6 3.5 1.0 versicolor
## 70 5.7 3.0 4.2 1.2 versicolor
## 71 5.7 2.9 4.2 1.3 versicolor
## 72 5.7 2.8 4.1 1.3 versicolor
## 73 5.7 2.5 5.0 2.0 virginica
## 74 5.8 4.0 1.2 0.2 setosa
## 75 5.8 2.7 4.1 1.0 versicolor
## 76 5.8 2.7 3.9 1.2 versicolor
## 77 5.8 2.6 4.0 1.2 versicolor
## 78 5.8 2.7 5.1 1.9 virginica
## 79 5.8 2.8 5.1 2.4 virginica
## 80 5.8 2.7 5.1 1.9 virginica
## 81 5.9 3.0 4.2 1.5 versicolor
## 82 5.9 3.2 4.8 1.8 versicolor
## 83 5.9 3.0 5.1 1.8 virginica
## 84 6.0 2.2 4.0 1.0 versicolor
## 85 6.0 2.9 4.5 1.5 versicolor
## 86 6.0 2.7 5.1 1.6 versicolor
## 87 6.0 3.4 4.5 1.6 versicolor
## 88 6.0 2.2 5.0 1.5 virginica
## 89 6.0 3.0 4.8 1.8 virginica
## 90 6.1 2.9 4.7 1.4 versicolor
## 91 6.1 2.8 4.0 1.3 versicolor
## 92 6.1 2.8 4.7 1.2 versicolor
## 93 6.1 3.0 4.6 1.4 versicolor
## 94 6.1 3.0 4.9 1.8 virginica
## 95 6.1 2.6 5.6 1.4 virginica
## 96 6.2 2.2 4.5 1.5 versicolor
## 97 6.2 2.9 4.3 1.3 versicolor
## 98 6.2 2.8 4.8 1.8 virginica
## 99 6.2 3.4 5.4 2.3 virginica
## 100 6.3 3.3 4.7 1.6 versicolor
## 101 6.3 2.5 4.9 1.5 versicolor
## 102 6.3 2.3 4.4 1.3 versicolor
## 103 6.3 3.3 6.0 2.5 virginica
## 104 6.3 2.9 5.6 1.8 virginica
## 105 6.3 2.7 4.9 1.8 virginica
## 106 6.3 2.8 5.1 1.5 virginica
## 107 6.3 3.4 5.6 2.4 virginica
## 108 6.3 2.5 5.0 1.9 virginica
## 109 6.4 3.2 4.5 1.5 versicolor
## 110 6.4 2.9 4.3 1.3 versicolor
## 111 6.4 2.7 5.3 1.9 virginica
## 112 6.4 3.2 5.3 2.3 virginica
## 113 6.4 2.8 5.6 2.1 virginica
## 114 6.4 2.8 5.6 2.2 virginica
## 115 6.4 3.1 5.5 1.8 virginica
## 116 6.5 2.8 4.6 1.5 versicolor
## 117 6.5 3.0 5.8 2.2 virginica
## 118 6.5 3.2 5.1 2.0 virginica
## 119 6.5 3.0 5.5 1.8 virginica
## 120 6.5 3.0 5.2 2.0 virginica
## 121 6.6 2.9 4.6 1.3 versicolor
## 122 6.6 3.0 4.4 1.4 versicolor
## 123 6.7 3.1 4.4 1.4 versicolor
## 124 6.7 3.0 5.0 1.7 versicolor
## 125 6.7 3.1 4.7 1.5 versicolor
## 126 6.7 2.5 5.8 1.8 virginica
## 127 6.7 3.3 5.7 2.1 virginica
## 128 6.7 3.1 5.6 2.4 virginica
## 129 6.7 3.3 5.7 2.5 virginica
## 130 6.7 3.0 5.2 2.3 virginica
## 131 6.8 2.8 4.8 1.4 versicolor
## 132 6.8 3.0 5.5 2.1 virginica
## 133 6.8 3.2 5.9 2.3 virginica
## 134 6.9 3.1 4.9 1.5 versicolor
## 135 6.9 3.2 5.7 2.3 virginica
## 136 6.9 3.1 5.4 2.1 virginica
## 137 6.9 3.1 5.1 2.3 virginica
## 138 7.0 3.2 4.7 1.4 versicolor
## 139 7.1 3.0 5.9 2.1 virginica
## 140 7.2 3.6 6.1 2.5 virginica
## 141 7.2 3.2 6.0 1.8 virginica
## 142 7.2 3.0 5.8 1.6 virginica
## 143 7.3 2.9 6.3 1.8 virginica
## 144 7.4 2.8 6.1 1.9 virginica
## 145 7.6 3.0 6.6 2.1 virginica
## 146 7.7 3.8 6.7 2.2 virginica
## 147 7.7 2.6 6.9 2.3 virginica
## 148 7.7 2.8 6.7 2.0 virginica
## 149 7.7 3.0 6.1 2.3 virginica
## 150 7.9 3.8 6.4 2.0 virginica
arrange(iris,desc(Species),Sepal.Length)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 4.9 2.5 4.5 1.7 virginica
## 2 5.6 2.8 4.9 2.0 virginica
## 3 5.7 2.5 5.0 2.0 virginica
## 4 5.8 2.7 5.1 1.9 virginica
## 5 5.8 2.8 5.1 2.4 virginica
## 6 5.8 2.7 5.1 1.9 virginica
## 7 5.9 3.0 5.1 1.8 virginica
## 8 6.0 2.2 5.0 1.5 virginica
## 9 6.0 3.0 4.8 1.8 virginica
## 10 6.1 3.0 4.9 1.8 virginica
## 11 6.1 2.6 5.6 1.4 virginica
## 12 6.2 2.8 4.8 1.8 virginica
## 13 6.2 3.4 5.4 2.3 virginica
## 14 6.3 3.3 6.0 2.5 virginica
## 15 6.3 2.9 5.6 1.8 virginica
## 16 6.3 2.7 4.9 1.8 virginica
## 17 6.3 2.8 5.1 1.5 virginica
## 18 6.3 3.4 5.6 2.4 virginica
## 19 6.3 2.5 5.0 1.9 virginica
## 20 6.4 2.7 5.3 1.9 virginica
## 21 6.4 3.2 5.3 2.3 virginica
## 22 6.4 2.8 5.6 2.1 virginica
## 23 6.4 2.8 5.6 2.2 virginica
## 24 6.4 3.1 5.5 1.8 virginica
## 25 6.5 3.0 5.8 2.2 virginica
## 26 6.5 3.2 5.1 2.0 virginica
## 27 6.5 3.0 5.5 1.8 virginica
## 28 6.5 3.0 5.2 2.0 virginica
## 29 6.7 2.5 5.8 1.8 virginica
## 30 6.7 3.3 5.7 2.1 virginica
## 31 6.7 3.1 5.6 2.4 virginica
## 32 6.7 3.3 5.7 2.5 virginica
## 33 6.7 3.0 5.2 2.3 virginica
## 34 6.8 3.0 5.5 2.1 virginica
## 35 6.8 3.2 5.9 2.3 virginica
## 36 6.9 3.2 5.7 2.3 virginica
## 37 6.9 3.1 5.4 2.1 virginica
## 38 6.9 3.1 5.1 2.3 virginica
## 39 7.1 3.0 5.9 2.1 virginica
## 40 7.2 3.6 6.1 2.5 virginica
## 41 7.2 3.2 6.0 1.8 virginica
## 42 7.2 3.0 5.8 1.6 virginica
## 43 7.3 2.9 6.3 1.8 virginica
## 44 7.4 2.8 6.1 1.9 virginica
## 45 7.6 3.0 6.6 2.1 virginica
## 46 7.7 3.8 6.7 2.2 virginica
## 47 7.7 2.6 6.9 2.3 virginica
## 48 7.7 2.8 6.7 2.0 virginica
## 49 7.7 3.0 6.1 2.3 virginica
## 50 7.9 3.8 6.4 2.0 virginica
## 51 4.9 2.4 3.3 1.0 versicolor
## 52 5.0 2.0 3.5 1.0 versicolor
## 53 5.0 2.3 3.3 1.0 versicolor
## 54 5.1 2.5 3.0 1.1 versicolor
## 55 5.2 2.7 3.9 1.4 versicolor
## 56 5.4 3.0 4.5 1.5 versicolor
## 57 5.5 2.3 4.0 1.3 versicolor
## 58 5.5 2.4 3.8 1.1 versicolor
## 59 5.5 2.4 3.7 1.0 versicolor
## 60 5.5 2.5 4.0 1.3 versicolor
## 61 5.5 2.6 4.4 1.2 versicolor
## 62 5.6 2.9 3.6 1.3 versicolor
## 63 5.6 3.0 4.5 1.5 versicolor
## 64 5.6 2.5 3.9 1.1 versicolor
## 65 5.6 3.0 4.1 1.3 versicolor
## 66 5.6 2.7 4.2 1.3 versicolor
## 67 5.7 2.8 4.5 1.3 versicolor
## 68 5.7 2.6 3.5 1.0 versicolor
## 69 5.7 3.0 4.2 1.2 versicolor
## 70 5.7 2.9 4.2 1.3 versicolor
## 71 5.7 2.8 4.1 1.3 versicolor
## 72 5.8 2.7 4.1 1.0 versicolor
## 73 5.8 2.7 3.9 1.2 versicolor
## 74 5.8 2.6 4.0 1.2 versicolor
## 75 5.9 3.0 4.2 1.5 versicolor
## 76 5.9 3.2 4.8 1.8 versicolor
## 77 6.0 2.2 4.0 1.0 versicolor
## 78 6.0 2.9 4.5 1.5 versicolor
## 79 6.0 2.7 5.1 1.6 versicolor
## 80 6.0 3.4 4.5 1.6 versicolor
## 81 6.1 2.9 4.7 1.4 versicolor
## 82 6.1 2.8 4.0 1.3 versicolor
## 83 6.1 2.8 4.7 1.2 versicolor
## 84 6.1 3.0 4.6 1.4 versicolor
## 85 6.2 2.2 4.5 1.5 versicolor
## 86 6.2 2.9 4.3 1.3 versicolor
## 87 6.3 3.3 4.7 1.6 versicolor
## 88 6.3 2.5 4.9 1.5 versicolor
## 89 6.3 2.3 4.4 1.3 versicolor
## 90 6.4 3.2 4.5 1.5 versicolor
## 91 6.4 2.9 4.3 1.3 versicolor
## 92 6.5 2.8 4.6 1.5 versicolor
## 93 6.6 2.9 4.6 1.3 versicolor
## 94 6.6 3.0 4.4 1.4 versicolor
## 95 6.7 3.1 4.4 1.4 versicolor
## 96 6.7 3.0 5.0 1.7 versicolor
## 97 6.7 3.1 4.7 1.5 versicolor
## 98 6.8 2.8 4.8 1.4 versicolor
## 99 6.9 3.1 4.9 1.5 versicolor
## 100 7.0 3.2 4.7 1.4 versicolor
## 101 4.3 3.0 1.1 0.1 setosa
## 102 4.4 2.9 1.4 0.2 setosa
## 103 4.4 3.0 1.3 0.2 setosa
## 104 4.4 3.2 1.3 0.2 setosa
## 105 4.5 2.3 1.3 0.3 setosa
## 106 4.6 3.1 1.5 0.2 setosa
## 107 4.6 3.4 1.4 0.3 setosa
## 108 4.6 3.6 1.0 0.2 setosa
## 109 4.6 3.2 1.4 0.2 setosa
## 110 4.7 3.2 1.3 0.2 setosa
## 111 4.7 3.2 1.6 0.2 setosa
## 112 4.8 3.4 1.6 0.2 setosa
## 113 4.8 3.0 1.4 0.1 setosa
## 114 4.8 3.4 1.9 0.2 setosa
## 115 4.8 3.1 1.6 0.2 setosa
## 116 4.8 3.0 1.4 0.3 setosa
## 117 4.9 3.0 1.4 0.2 setosa
## 118 4.9 3.1 1.5 0.1 setosa
## 119 4.9 3.1 1.5 0.2 setosa
## 120 4.9 3.6 1.4 0.1 setosa
## 121 5.0 3.6 1.4 0.2 setosa
## 122 5.0 3.4 1.5 0.2 setosa
## 123 5.0 3.0 1.6 0.2 setosa
## 124 5.0 3.4 1.6 0.4 setosa
## 125 5.0 3.2 1.2 0.2 setosa
## 126 5.0 3.5 1.3 0.3 setosa
## 127 5.0 3.5 1.6 0.6 setosa
## 128 5.0 3.3 1.4 0.2 setosa
## 129 5.1 3.5 1.4 0.2 setosa
## 130 5.1 3.5 1.4 0.3 setosa
## 131 5.1 3.8 1.5 0.3 setosa
## 132 5.1 3.7 1.5 0.4 setosa
## 133 5.1 3.3 1.7 0.5 setosa
## 134 5.1 3.4 1.5 0.2 setosa
## 135 5.1 3.8 1.9 0.4 setosa
## 136 5.1 3.8 1.6 0.2 setosa
## 137 5.2 3.5 1.5 0.2 setosa
## 138 5.2 3.4 1.4 0.2 setosa
## 139 5.2 4.1 1.5 0.1 setosa
## 140 5.3 3.7 1.5 0.2 setosa
## 141 5.4 3.9 1.7 0.4 setosa
## 142 5.4 3.7 1.5 0.2 setosa
## 143 5.4 3.9 1.3 0.4 setosa
## 144 5.4 3.4 1.7 0.2 setosa
## 145 5.4 3.4 1.5 0.4 setosa
## 146 5.5 4.2 1.4 0.2 setosa
## 147 5.5 3.5 1.3 0.2 setosa
## 148 5.7 4.4 1.5 0.4 setosa
## 149 5.7 3.8 1.7 0.3 setosa
## 150 5.8 4.0 1.2 0.2 setosa
iris1<-filter(iris,Sepal.Length>5)
iris1
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 5.4 3.9 1.7 0.4 setosa
## 3 5.4 3.7 1.5 0.2 setosa
## 4 5.8 4.0 1.2 0.2 setosa
## 5 5.7 4.4 1.5 0.4 setosa
## 6 5.4 3.9 1.3 0.4 setosa
## 7 5.1 3.5 1.4 0.3 setosa
## 8 5.7 3.8 1.7 0.3 setosa
## 9 5.1 3.8 1.5 0.3 setosa
## 10 5.4 3.4 1.7 0.2 setosa
## 11 5.1 3.7 1.5 0.4 setosa
## 12 5.1 3.3 1.7 0.5 setosa
## 13 5.2 3.5 1.5 0.2 setosa
## 14 5.2 3.4 1.4 0.2 setosa
## 15 5.4 3.4 1.5 0.4 setosa
## 16 5.2 4.1 1.5 0.1 setosa
## 17 5.5 4.2 1.4 0.2 setosa
## 18 5.5 3.5 1.3 0.2 setosa
## 19 5.1 3.4 1.5 0.2 setosa
## 20 5.1 3.8 1.9 0.4 setosa
## 21 5.1 3.8 1.6 0.2 setosa
## 22 5.3 3.7 1.5 0.2 setosa
## 23 7.0 3.2 4.7 1.4 versicolor
## 24 6.4 3.2 4.5 1.5 versicolor
## 25 6.9 3.1 4.9 1.5 versicolor
## 26 5.5 2.3 4.0 1.3 versicolor
## 27 6.5 2.8 4.6 1.5 versicolor
## 28 5.7 2.8 4.5 1.3 versicolor
## 29 6.3 3.3 4.7 1.6 versicolor
## 30 6.6 2.9 4.6 1.3 versicolor
## 31 5.2 2.7 3.9 1.4 versicolor
## 32 5.9 3.0 4.2 1.5 versicolor
## 33 6.0 2.2 4.0 1.0 versicolor
## 34 6.1 2.9 4.7 1.4 versicolor
## 35 5.6 2.9 3.6 1.3 versicolor
## 36 6.7 3.1 4.4 1.4 versicolor
## 37 5.6 3.0 4.5 1.5 versicolor
## 38 5.8 2.7 4.1 1.0 versicolor
## 39 6.2 2.2 4.5 1.5 versicolor
## 40 5.6 2.5 3.9 1.1 versicolor
## 41 5.9 3.2 4.8 1.8 versicolor
## 42 6.1 2.8 4.0 1.3 versicolor
## 43 6.3 2.5 4.9 1.5 versicolor
## 44 6.1 2.8 4.7 1.2 versicolor
## 45 6.4 2.9 4.3 1.3 versicolor
## 46 6.6 3.0 4.4 1.4 versicolor
## 47 6.8 2.8 4.8 1.4 versicolor
## 48 6.7 3.0 5.0 1.7 versicolor
## 49 6.0 2.9 4.5 1.5 versicolor
## 50 5.7 2.6 3.5 1.0 versicolor
## 51 5.5 2.4 3.8 1.1 versicolor
## 52 5.5 2.4 3.7 1.0 versicolor
## 53 5.8 2.7 3.9 1.2 versicolor
## 54 6.0 2.7 5.1 1.6 versicolor
## 55 5.4 3.0 4.5 1.5 versicolor
## 56 6.0 3.4 4.5 1.6 versicolor
## 57 6.7 3.1 4.7 1.5 versicolor
## 58 6.3 2.3 4.4 1.3 versicolor
## 59 5.6 3.0 4.1 1.3 versicolor
## 60 5.5 2.5 4.0 1.3 versicolor
## 61 5.5 2.6 4.4 1.2 versicolor
## 62 6.1 3.0 4.6 1.4 versicolor
## 63 5.8 2.6 4.0 1.2 versicolor
## 64 5.6 2.7 4.2 1.3 versicolor
## 65 5.7 3.0 4.2 1.2 versicolor
## 66 5.7 2.9 4.2 1.3 versicolor
## 67 6.2 2.9 4.3 1.3 versicolor
## 68 5.1 2.5 3.0 1.1 versicolor
## 69 5.7 2.8 4.1 1.3 versicolor
## 70 6.3 3.3 6.0 2.5 virginica
## 71 5.8 2.7 5.1 1.9 virginica
## 72 7.1 3.0 5.9 2.1 virginica
## 73 6.3 2.9 5.6 1.8 virginica
## 74 6.5 3.0 5.8 2.2 virginica
## 75 7.6 3.0 6.6 2.1 virginica
## 76 7.3 2.9 6.3 1.8 virginica
## 77 6.7 2.5 5.8 1.8 virginica
## 78 7.2 3.6 6.1 2.5 virginica
## 79 6.5 3.2 5.1 2.0 virginica
## 80 6.4 2.7 5.3 1.9 virginica
## 81 6.8 3.0 5.5 2.1 virginica
## 82 5.7 2.5 5.0 2.0 virginica
## 83 5.8 2.8 5.1 2.4 virginica
## 84 6.4 3.2 5.3 2.3 virginica
## 85 6.5 3.0 5.5 1.8 virginica
## 86 7.7 3.8 6.7 2.2 virginica
## 87 7.7 2.6 6.9 2.3 virginica
## 88 6.0 2.2 5.0 1.5 virginica
## 89 6.9 3.2 5.7 2.3 virginica
## 90 5.6 2.8 4.9 2.0 virginica
## 91 7.7 2.8 6.7 2.0 virginica
## 92 6.3 2.7 4.9 1.8 virginica
## 93 6.7 3.3 5.7 2.1 virginica
## 94 7.2 3.2 6.0 1.8 virginica
## 95 6.2 2.8 4.8 1.8 virginica
## 96 6.1 3.0 4.9 1.8 virginica
## 97 6.4 2.8 5.6 2.1 virginica
## 98 7.2 3.0 5.8 1.6 virginica
## 99 7.4 2.8 6.1 1.9 virginica
## 100 7.9 3.8 6.4 2.0 virginica
## 101 6.4 2.8 5.6 2.2 virginica
## 102 6.3 2.8 5.1 1.5 virginica
## 103 6.1 2.6 5.6 1.4 virginica
## 104 7.7 3.0 6.1 2.3 virginica
## 105 6.3 3.4 5.6 2.4 virginica
## 106 6.4 3.1 5.5 1.8 virginica
## 107 6.0 3.0 4.8 1.8 virginica
## 108 6.9 3.1 5.4 2.1 virginica
## 109 6.7 3.1 5.6 2.4 virginica
## 110 6.9 3.1 5.1 2.3 virginica
## 111 5.8 2.7 5.1 1.9 virginica
## 112 6.8 3.2 5.9 2.3 virginica
## 113 6.7 3.3 5.7 2.5 virginica
## 114 6.7 3.0 5.2 2.3 virginica
## 115 6.3 2.5 5.0 1.9 virginica
## 116 6.5 3.0 5.2 2.0 virginica
## 117 6.2 3.4 5.4 2.3 virginica
## 118 5.9 3.0 5.1 1.8 virginica
filter(iris,Species=="setosa",Sepal.Length>5)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 5.4 3.9 1.7 0.4 setosa
## 3 5.4 3.7 1.5 0.2 setosa
## 4 5.8 4.0 1.2 0.2 setosa
## 5 5.7 4.4 1.5 0.4 setosa
## 6 5.4 3.9 1.3 0.4 setosa
## 7 5.1 3.5 1.4 0.3 setosa
## 8 5.7 3.8 1.7 0.3 setosa
## 9 5.1 3.8 1.5 0.3 setosa
## 10 5.4 3.4 1.7 0.2 setosa
## 11 5.1 3.7 1.5 0.4 setosa
## 12 5.1 3.3 1.7 0.5 setosa
## 13 5.2 3.5 1.5 0.2 setosa
## 14 5.2 3.4 1.4 0.2 setosa
## 15 5.4 3.4 1.5 0.4 setosa
## 16 5.2 4.1 1.5 0.1 setosa
## 17 5.5 4.2 1.4 0.2 setosa
## 18 5.5 3.5 1.3 0.2 setosa
## 19 5.1 3.4 1.5 0.2 setosa
## 20 5.1 3.8 1.9 0.4 setosa
## 21 5.1 3.8 1.6 0.2 setosa
## 22 5.3 3.7 1.5 0.2 setosa
# Wylosowanie 5% obserwacji ze zbioru danych.
sample_frac(iris,0.05)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 6.4 2.8 5.6 2.1 virginica
## 2 6.4 3.2 4.5 1.5 versicolor
## 3 6.0 2.9 4.5 1.5 versicolor
## 4 6.9 3.1 5.1 2.3 virginica
## 5 6.1 3.0 4.6 1.4 versicolor
## 6 4.3 3.0 1.1 0.1 setosa
## 7 5.0 2.0 3.5 1.0 versicolor
## 8 5.0 3.4 1.5 0.2 setosa
0.05*150
## [1] 7.5
16%>%sqrt()%>%log()
## [1] 1.386294
log(4)
## [1] 1.386294
# Wyselekcjonowanie ze zbioru danych iris: irysów, które są gatunku versicolor,
# a uzyskany zbiór należy posortować malejąco względem Petal.Width.
iris%>%filter(Species=="versicolor")%>%arrange(desc(Petal.Width))
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.9 3.2 4.8 1.8 versicolor
## 2 6.7 3.0 5.0 1.7 versicolor
## 3 6.3 3.3 4.7 1.6 versicolor
## 4 6.0 2.7 5.1 1.6 versicolor
## 5 6.0 3.4 4.5 1.6 versicolor
## 6 6.4 3.2 4.5 1.5 versicolor
## 7 6.9 3.1 4.9 1.5 versicolor
## 8 6.5 2.8 4.6 1.5 versicolor
## 9 5.9 3.0 4.2 1.5 versicolor
## 10 5.6 3.0 4.5 1.5 versicolor
## 11 6.2 2.2 4.5 1.5 versicolor
## 12 6.3 2.5 4.9 1.5 versicolor
## 13 6.0 2.9 4.5 1.5 versicolor
## 14 5.4 3.0 4.5 1.5 versicolor
## 15 6.7 3.1 4.7 1.5 versicolor
## 16 7.0 3.2 4.7 1.4 versicolor
## 17 5.2 2.7 3.9 1.4 versicolor
## 18 6.1 2.9 4.7 1.4 versicolor
## 19 6.7 3.1 4.4 1.4 versicolor
## 20 6.6 3.0 4.4 1.4 versicolor
## 21 6.8 2.8 4.8 1.4 versicolor
## 22 6.1 3.0 4.6 1.4 versicolor
## 23 5.5 2.3 4.0 1.3 versicolor
## 24 5.7 2.8 4.5 1.3 versicolor
## 25 6.6 2.9 4.6 1.3 versicolor
## 26 5.6 2.9 3.6 1.3 versicolor
## 27 6.1 2.8 4.0 1.3 versicolor
## 28 6.4 2.9 4.3 1.3 versicolor
## 29 6.3 2.3 4.4 1.3 versicolor
## 30 5.6 3.0 4.1 1.3 versicolor
## 31 5.5 2.5 4.0 1.3 versicolor
## 32 5.6 2.7 4.2 1.3 versicolor
## 33 5.7 2.9 4.2 1.3 versicolor
## 34 6.2 2.9 4.3 1.3 versicolor
## 35 5.7 2.8 4.1 1.3 versicolor
## 36 6.1 2.8 4.7 1.2 versicolor
## 37 5.8 2.7 3.9 1.2 versicolor
## 38 5.5 2.6 4.4 1.2 versicolor
## 39 5.8 2.6 4.0 1.2 versicolor
## 40 5.7 3.0 4.2 1.2 versicolor
## 41 5.6 2.5 3.9 1.1 versicolor
## 42 5.5 2.4 3.8 1.1 versicolor
## 43 5.1 2.5 3.0 1.1 versicolor
## 44 4.9 2.4 3.3 1.0 versicolor
## 45 5.0 2.0 3.5 1.0 versicolor
## 46 6.0 2.2 4.0 1.0 versicolor
## 47 5.8 2.7 4.1 1.0 versicolor
## 48 5.7 2.6 3.5 1.0 versicolor
## 49 5.5 2.4 3.7 1.0 versicolor
## 50 5.0 2.3 3.3 1.0 versicolor
mtcars
library(ggplot2)
library(knitr)
mtcars
.mtcars
## mpg cyl disp hp drat wt qsec vs am gear carb
## Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
## Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
## Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
## Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
## Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
## Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
summary(mtcars)
## mpg cyl disp hp
## Min. :10.40 Min. :4.000 Min. : 71.1 Min. : 52.0
## 1st Qu.:15.43 1st Qu.:4.000 1st Qu.:120.8 1st Qu.: 96.5
## Median :19.20 Median :6.000 Median :196.3 Median :123.0
## Mean :20.09 Mean :6.188 Mean :230.7 Mean :146.7
## 3rd Qu.:22.80 3rd Qu.:8.000 3rd Qu.:326.0 3rd Qu.:180.0
## Max. :33.90 Max. :8.000 Max. :472.0 Max. :335.0
## drat wt qsec vs
## Min. :2.760 Min. :1.513 Min. :14.50 Min. :0.0000
## 1st Qu.:3.080 1st Qu.:2.581 1st Qu.:16.89 1st Qu.:0.0000
## Median :3.695 Median :3.325 Median :17.71 Median :0.0000
## Mean :3.597 Mean :3.217 Mean :17.85 Mean :0.4375
## 3rd Qu.:3.920 3rd Qu.:3.610 3rd Qu.:18.90 3rd Qu.:1.0000
## Max. :4.930 Max. :5.424 Max. :22.90 Max. :1.0000
## am gear carb
## Min. :0.0000 Min. :3.000 Min. :1.000
## 1st Qu.:0.0000 1st Qu.:3.000 1st Qu.:2.000
## Median :0.0000 Median :4.000 Median :2.000
## Mean :0.4062 Mean :3.688 Mean :2.812
## 3rd Qu.:1.0000 3rd Qu.:4.000 3rd Qu.:4.000
## Max. :1.0000 Max. :5.000 Max. :8.000
mtcars$gear <- factor(mtcars$gear)
mtcars$am <- factor(mtcars$am)
mtcars$cyl <- factor(mtcars$cyl)
head(mtcars)
## mpg cyl disp hp drat wt qsec vs am gear carb
## Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
## Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
## Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
## Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
## Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
## Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
par(mar = c(4, 4, .5, .1))
plot(mpg ~ hp, data = mtcars, pch = 19)
summary(mtcars)
## mpg cyl disp hp drat
## Min. :10.40 4:11 Min. : 71.1 Min. : 52.0 Min. :2.760
## 1st Qu.:15.43 6: 7 1st Qu.:120.8 1st Qu.: 96.5 1st Qu.:3.080
## Median :19.20 8:14 Median :196.3 Median :123.0 Median :3.695
## Mean :20.09 Mean :230.7 Mean :146.7 Mean :3.597
## 3rd Qu.:22.80 3rd Qu.:326.0 3rd Qu.:180.0 3rd Qu.:3.920
## Max. :33.90 Max. :472.0 Max. :335.0 Max. :4.930
## wt qsec vs am gear carb
## Min. :1.513 Min. :14.50 Min. :0.0000 0:19 3:15 Min. :1.000
## 1st Qu.:2.581 1st Qu.:16.89 1st Qu.:0.0000 1:13 4:12 1st Qu.:2.000
## Median :3.325 Median :17.71 Median :0.0000 5: 5 Median :2.000
## Mean :3.217 Mean :17.85 Mean :0.4375 Mean :2.812
## 3rd Qu.:3.610 3rd Qu.:18.90 3rd Qu.:1.0000 3rd Qu.:4.000
## Max. :5.424 Max. :22.90 Max. :1.0000 Max. :8.000
head(mtcars)
## mpg cyl disp hp drat wt qsec vs am gear carb
## Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
## Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
## Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
## Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
## Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
## Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
summary(mtcars)
## mpg cyl disp hp drat
## Min. :10.40 4:11 Min. : 71.1 Min. : 52.0 Min. :2.760
## 1st Qu.:15.43 6: 7 1st Qu.:120.8 1st Qu.: 96.5 1st Qu.:3.080
## Median :19.20 8:14 Median :196.3 Median :123.0 Median :3.695
## Mean :20.09 Mean :230.7 Mean :146.7 Mean :3.597
## 3rd Qu.:22.80 3rd Qu.:326.0 3rd Qu.:180.0 3rd Qu.:3.920
## Max. :33.90 Max. :472.0 Max. :335.0 Max. :4.930
## wt qsec vs am gear carb
## Min. :1.513 Min. :14.50 Min. :0.0000 0:19 3:15 Min. :1.000
## 1st Qu.:2.581 1st Qu.:16.89 1st Qu.:0.0000 1:13 4:12 1st Qu.:2.000
## Median :3.325 Median :17.71 Median :0.0000 5: 5 Median :2.000
## Mean :3.217 Mean :17.85 Mean :0.4375 Mean :2.812
## 3rd Qu.:3.610 3rd Qu.:18.90 3rd Qu.:1.0000 3rd Qu.:4.000
## Max. :5.424 Max. :22.90 Max. :1.0000 Max. :8.000
ggplot(data=mtcars,aes(x=wt,y=mpg))+geom_point()
ggplot(mtcars,aes(wt,mpg))+geom_point()
ggplot(mtcars,aes(wt,mpg,color=cyl))+geom_point()
ggplot(mtcars,aes(wt,mpg,color=cyl))+geom_point()+labs(x='Waga samochodu',y='Liczba przejechanych mil na galonie paliwa')
ggplot(mtcars,aes(wt,mpg,color=cyl))+geom_point()+labs(x='Waga samochodu',y='Liczba przejechanych mil na galonie paliwa',color='Liczba cylindrów')
ggplot(mtcars,aes(wt,mpg,color=cyl))+
geom_point()+
labs(x='Waga samochodu',y='Liczba przejechanych mil na galonie paliwa',color='Liczba cylindrów')
ggplot(mtcars,aes(wt,mpg,color=cyl))+
geom_point()+
labs(x='Waga samochodu',y='Liczba przejechanych mil na galonie paliwa',color='Liczba cylindrów')+
theme(legend.position='bottom')
ggplot(mtcars,aes(wt,mpg,color=cyl,shape=gear))+
geom_point()+
labs(x='Waga samochodu',y='Liczba przejechanych mil na galonie paliwa',color='Liczba cylindrów',shape='Liczba biegów')+
theme(legend.position='bottom')
ggplot(mtcars,aes(wt,mpg,color=cyl,shape=gear,size=wt))+
geom_point()+
labs(x='Waga samochodu',y='Liczba przejechanych mil na galonie paliwa',color='Liczba cylindrów',shape='Liczba biegów',size='Waga')+
theme(legend.position='bottom')
ggplot(mtcars,aes(wt,mpg))+
geom_point()
ggplot(mtcars,aes(mpg))+
geom_histogram()
ggplot(mtcars,aes(mpg))+
geom_histogram(binwidth=2,fill='yellow',color='blue')
ggplot(mtcars,aes(mpg,fill=cyl))+
geom_histogram(binwidth=.8,)
ggplot(mtcars,aes(cyl))+
geom_bar()
ggplot(mtcars,aes(cyl))+
geom_bar()+
coord_flip()
ggplot(mtcars,aes(cyl))+
geom_bar()+
coord_polar()
ggplot(mtcars,aes(cyl,mpg))+
geom_boxplot()
ggplot(mtcars,aes(cyl,mpg))+
geom_boxplot()+
geom_point()
ggplot(mtcars,aes(cyl,mpg))+
geom_boxplot()+
geom_jitter()
ggplot(mtcars,aes(factor(cyl),mpg))+
geom_violin()
ggplot(mtcars,aes(factor(cyl),mpg))+
geom_violin()+
geom_jitter()
ggplot(mtcars,aes(wt,mpg,label=row.names(mtcars)))+
geom_text()
ggplot(mtcars,aes(wt,mpg,label=row.names(mtcars)))+
geom_text()+
geom_point()
ggplot(mtcars,aes(wt,mpg))+
geom_smooth()
ggplot(mtcars,aes(wt,mpg))+
geom_smooth()+
geom_point()
ggplot(mtcars,aes(wt,mpg))+
geom_smooth(method='lm')+
geom_point()
ggplot(mtcars,aes(wt,mpg,color=cyl))+
geom_smooth(method='lm')+
geom_point()
ggplot(mtcars,aes(wt,mpg))+
geom_smooth(method='lm',formula=y~poly(x,2))+
geom_point()
library(ggplot2)
library(patchwork)
mtcars
.summary(mtcars)
## mpg cyl disp hp drat
## Min. :10.40 4:11 Min. : 71.1 Min. : 52.0 Min. :2.760
## 1st Qu.:15.43 6: 7 1st Qu.:120.8 1st Qu.: 96.5 1st Qu.:3.080
## Median :19.20 8:14 Median :196.3 Median :123.0 Median :3.695
## Mean :20.09 Mean :230.7 Mean :146.7 Mean :3.597
## 3rd Qu.:22.80 3rd Qu.:326.0 3rd Qu.:180.0 3rd Qu.:3.920
## Max. :33.90 Max. :472.0 Max. :335.0 Max. :4.930
## wt qsec vs am gear carb
## Min. :1.513 Min. :14.50 Min. :0.0000 0:19 3:15 Min. :1.000
## 1st Qu.:2.581 1st Qu.:16.89 1st Qu.:0.0000 1:13 4:12 1st Qu.:2.000
## Median :3.325 Median :17.71 Median :0.0000 5: 5 Median :2.000
## Mean :3.217 Mean :17.85 Mean :0.4375 Mean :2.812
## 3rd Qu.:3.610 3rd Qu.:18.90 3rd Qu.:1.0000 3rd Qu.:4.000
## Max. :5.424 Max. :22.90 Max. :1.0000 Max. :8.000
ggplot(mtcars,aes(wt, mpg)) + geom_point()
ggplot(mtcars) + geom_point(aes(wt, mpg))
p1 <- ggplot(mtcars) + geom_point(aes(wt, mpg))
p2 <- ggplot(mtcars) + geom_boxplot(aes(factor(cyl), mpg, fill = factor(gear)))
p1
p2
p1 + p2
p1|p2
p1/p2
p3 <- ggplot(mtcars) + geom_smooth(aes(wt, mpg))
p4 <- ggplot(mtcars) + geom_bar(aes(factor(cyl),fill=factor(gear)))
p3
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p4
p1 / (p2 | p3)
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
(p1 | p2 | p3) /
p4
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1+p2+p3+p4
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1| p2| p3| p4
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
wrap_plots(p1, p2, p3, p4)
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1+p2
p1 + p2 + geom_jitter(aes(factor(cyl), mpg))
rys <- p3 + p2
p1 + rys
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
wrap_plots(rys, p3)
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1 + p2 + plot_spacer() +p3
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1 + p2 / plot_spacer() +p3
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1 + plot_spacer() + p2 + plot_spacer() + p3 + plot_spacer()
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1 + p2 + p3 + p4 +
plot_layout(ncol = 3)
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1 + p2 + p3 + p4 +
plot_layout(widths = c(2, 1))
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1 + p2 + p3 + p4 +
plot_layout(widths = c(2, 1), heights = c(5, 1))
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
layout <- '
A#B
#C#
D#E
'
wrap_plots(D = p1, C = p2, B = p3, design = layout)
## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'
p1 + inset_element(p2, left = 0.55, bottom = 0.55, right = 1, top = 1)
library(grid)
p1 + grid::textGrob('Tekst w oknie obok wykresu. ')
library(gridGraphics)
library(gridExtra)
##
## Dołączanie pakietu: 'gridExtra'
## Następujący obiekt został zakryty z 'package:dplyr':
##
## combine
p1 + gridExtra::tableGrob(mtcars[1:10, c('mpg', 'disp')])
p1 + tableGrob(mtcars[1:10, c('mpg', 'disp','hp','wt')])
p1 + ~plot(mtcars$mpg, mtcars$disp, main = 'Wykres 2')
gapminder
library(ggplot2)
library(dplyr)
library(gapminder)
gapminder
z pakietu gapmindersummary(gapminder)
## country continent year lifeExp
## Afghanistan: 12 Africa :624 Min. :1952 Min. :23.60
## Albania : 12 Americas:300 1st Qu.:1966 1st Qu.:48.20
## Algeria : 12 Asia :396 Median :1980 Median :60.71
## Angola : 12 Europe :360 Mean :1980 Mean :59.47
## Argentina : 12 Oceania : 24 3rd Qu.:1993 3rd Qu.:70.85
## Australia : 12 Max. :2007 Max. :82.60
## (Other) :1632
## pop gdpPercap
## Min. :6.001e+04 Min. : 241.2
## 1st Qu.:2.794e+06 1st Qu.: 1202.1
## Median :7.024e+06 Median : 3531.8
## Mean :2.960e+07 Mean : 7215.3
## 3rd Qu.:1.959e+07 3rd Qu.: 9325.5
## Max. :1.319e+09 Max. :113523.1
##
table(gapminder$continent, gapminder$year)
##
## 1952 1957 1962 1967 1972 1977 1982 1987 1992 1997 2002 2007
## Africa 52 52 52 52 52 52 52 52 52 52 52 52
## Americas 25 25 25 25 25 25 25 25 25 25 25 25
## Asia 33 33 33 33 33 33 33 33 33 33 33 33
## Europe 30 30 30 30 30 30 30 30 30 30 30 30
## Oceania 2 2 2 2 2 2 2 2 2 2 2 2
gapminder
ggplot(gapminder, aes(x=continent)) + geom_bar()
ggplot(gapminder, aes(x=continent, fill=continent)) + geom_bar()
ggplot(gapminder, aes(x=continent, fill=continent)) + geom_bar()+labs(fill='Kontynent')
ggplot(gapminder, aes(x=continent, fill=continent)) + geom_bar()+guides(fill='none')
rys
rys=ggplot(gapminder, aes(x=continent, fill=continent)) + geom_bar()+guides(fill='none')
rys + coord_trans(y="sqrt")
rys + coord_polar()
rys+coord_flip()
kraje <- c("Poland", "Germany", "Czech Republic", "Austria","Romania")
ggplot(subset(gapminder, country %in% kraje),
aes(x = year, y = lifeExp, color = country)) + geom_line() + geom_point()+
theme(legend.position='bottom') ####
ggplot(gapminder, aes(lifeExp)) +
geom_density()
ggplot(gapminder, aes(lifeExp)) +
geom_density(linewidth=1.5, fill="blue", alpha=0.6)
ggplot(gapminder, aes(lifeExp)) +
geom_histogram( binwidth=4, color="black", fill="lightblue", alpha=0.5)
ggplot(gapminder, aes(lifeExp)) +
geom_histogram(aes(y=after_stat(density)), binwidth=4, color="black", fill="lightblue", alpha=0.5)+
geom_density()
ggplot(data=gapminder, aes(x=lifeExp)) +
geom_histogram(aes(y=after_stat(density)), binwidth=4, color="black", fill="lightblue", alpha=0.5)+
geom_density(linewidth=1.5, fill="pink", alpha=0.2)
ggplot(data=gapminder, aes(x=lifeExp, fill=continent)) +
geom_density(alpha=0.3)
rys1
rys1 <- ggplot(gapminder, aes(continent, lifeExp, fill=continent))
rys1
z reprezentacją graficzną
boxplot
rys1 +
geom_boxplot(outlier.size=2)
rys1
z reprezentacją graficzną
violin
rys1 +
geom_violin()
rys2
rys2 <- ggplot(data=gapminder,
aes(x=gdpPercap, y=lifeExp))
rys2
rys2
z reprezentacją graficzną
point
rys2 + geom_point()
rys2
z reprezentacją graficzną
point
i kolorami dla kontynentówrys2 + geom_point(aes(color=continent))
rys2
z reprezentacją graficzną
violin
, kolorami dla kontynentów w oddzielnych oknachrys2+
geom_point(aes(color=continent)) +
facet_grid(year~continent)
library(gganimate)
library(gifski)
p
p <- ggplot(gapminder, aes(gdpPercap, lifeExp, size = pop, colour = country)) +
geom_point(alpha = 0.7) +
theme(legend.position = 'none') +
labs(title = 'Rok: {frame_time}', x = 'PKB na osobę', y = 'oczekiwana długość życia') +
transition_time(year)
p
p