#install.packages("XML")
 library(XML)
 inimesed=xmlToDataFrame("http://www.tlu.ee/~jaagup/andmed/muu/inimesed.xml")
 inimesed
##   eesnimi perenimi synd
## 1    Juku Juurikas 1963
## 2    Juku Kaalikas 1961
## 3   Kalle Kaalikas 1975
## 4    Mari Maasikas 1981
## 5   Oskar   Ohakas 1971
 inimesed$synd
## [1] 1963 1961 1975 1981 1971
## Levels: 1961 1963 1971 1975 1981
 sort(inimesed$synd)
## [1] 1961 1963 1971 1975 1981
## Levels: 1961 1963 1971 1975 1981
 order(inimesed$synd)
## [1] 2 1 5 3 4
 inimesed[order(inimesed$synd), ]
##   eesnimi perenimi synd
## 2    Juku Kaalikas 1961
## 1    Juku Juurikas 1963
## 5   Oskar   Ohakas 1971
## 3   Kalle Kaalikas 1975
## 4    Mari Maasikas 1981
 inimesed[as.numeric(as.character(inimesed$synd))<1980, c("eesnimi", "perenimi")]
##   eesnimi perenimi
## 1    Juku Juurikas
## 2    Juku Kaalikas
## 3   Kalle Kaalikas
## 5   Oskar   Ohakas
 #Kuvage inimesed järjestatuna perekonnanimede järgi
 head(inimesed[rev(order(inimesed$perenimi)), ], 3)
##   eesnimi perenimi synd
## 5   Oskar   Ohakas 1971
## 4    Mari Maasikas 1981
## 3   Kalle Kaalikas 1975
 inimesed$perenimi=="Kaalikas"
## [1] FALSE  TRUE  TRUE FALSE FALSE
 inimesed[inimesed$perenimi=="Kaalikas", ]
##   eesnimi perenimi synd
## 2    Juku Kaalikas 1961
## 3   Kalle Kaalikas 1975
 with(inimesed, inimesed[perenimi=="Kaalikas", ])
##   eesnimi perenimi synd
## 2    Juku Kaalikas 1961
## 3   Kalle Kaalikas 1975
 with(inimesed, inimesed[perenimi=="Kaalikas" | perenimi=="Ohakas", ])
##   eesnimi perenimi synd
## 2    Juku Kaalikas 1961
## 3   Kalle Kaalikas 1975
## 5   Oskar   Ohakas 1971
 juur=xmlRoot(xmlParse("http://www.tlu.ee/~jaagup/andmed/muu/inimesed.xml"))
 juur
## <inimesed>
##   <inimene>
##     <eesnimi>Juku</eesnimi>
##     <perenimi>Juurikas</perenimi>
##     <synd>1963</synd>
##   </inimene>
##   <inimene>
##     <eesnimi>Juku</eesnimi>
##     <perenimi>Kaalikas</perenimi>
##     <synd>1961</synd>
##   </inimene>
##   <inimene>
##     <eesnimi>Kalle</eesnimi>
##     <perenimi>Kaalikas</perenimi>
##     <synd>1975</synd>
##   </inimene>
##   <inimene>
##     <eesnimi>Mari</eesnimi>
##     <perenimi>Maasikas</perenimi>
##     <synd>1981</synd>
##   </inimene>
##   <inimene>
##     <eesnimi>Oskar</eesnimi>
##     <perenimi>Ohakas</perenimi>
##     <synd>1971</synd>
##   </inimene>
## </inimesed>
 #juur[1]
 juur[[1]]
## <inimene>
##   <eesnimi>Juku</eesnimi>
##   <perenimi>Juurikas</perenimi>
##   <synd>1963</synd>
## </inimene>
 juur[[1]][[2]]
## <perenimi>Juurikas</perenimi>
 juur[[1]][[2]][[1]]
## Juurikas
 doc=xmlParse("http://www.tlu.ee/~jaagup/andmed/muu/inimesed.xml")
 kaalikad=xpathSApply(doc, "//inimene[perenimi='Kaalikas']/eesnimi")
 kaalikad
## [[1]]
## <eesnimi>Juku</eesnimi> 
## 
## [[2]]
## <eesnimi>Kalle</eesnimi>
 kaalikad[[1]][[1]]
## Juku
eesnimed=sapply(kaalikad, function(isik){xmlValue(isik[[1]])})
eesnimed
## [1] "Juku"  "Kalle"
eesnimed[[2]]
## [1] "Kalle"
 for(eesnimi in eesnimed){
   print(eesnimi)
 }
## [1] "Juku"
## [1] "Kalle"
 length(eesnimed)
## [1] 2
 for(nr in 1:length(eesnimed)){
   print(paste(nr, "-", eesnimed[nr][[1]]))
 }
## [1] "1 - Juku"
## [1] "2 - Kalle"